2012-12-06 8 views
9

Joomlaの記事エディタに追加のボタンを挿入しようとしています。これは、拡張モードでデフォルトのTinyMCEプラグを使用しています。すでに知っているように、エディタの下に4つのボタンがあります(アーティクル、イメージ、改ページ、続き)。私がしたいのは、5番目のボタンを挿入することです。 (私はイメージボタンをつけたので、最低10ポイントのポストはできないと言った)Joomlaの記事エディタ(TinyMCE)にカスタムボタンを追加

私は改ページボタンをコピーして名前を変更してから、新しいプラグインが、それはTinyMCEでエラーを引き起こし、ボタンが表示されません。

質問:ボタンを挿入するにはどうすればよいですか?

+0

コードを掲載できますか?私はそれを取ってプラグインをインストールし、適切な場所にあり、有効になっています。 – Elin

+0

こんにちはエリン、私はコードを投稿することを検討しましたが、デフォルトのJoomlaのインストールに付属している 'ページ区切り'ボタンのためにすでに利用可能なコードであるため、助けになりません。プラグインは有効になっており、他のエディタ-xtdプラグインと同じ場所にあります。 –

+0

これは完全コピーである場合、名前がxmlの何かと一致する場所の1つを変更できなかった可能性が最も高いです。 – Elin

答えて

7

私は大々的な検索を続けて、Joomla 1.5のアーティクルエディタに追加のボタンを追加する方法についてのガイドを見つけました。

このチュートリアルは、http://tushev.org/articles/programming/18-how-to-create-an-editor-button-editors-xtd-plugin-for-joomlaから入手できます。

XMLマニフェストの標準が少しずつ変更されているため、これはJoomla 2.5とJoomla 3.0では機能しません。チュートリアルに沿って、このXMLマニフェストを代わりに使用してください。

<?xml version="1.0" encoding="utf-8"?> 
<extension version="2.5" type="plugin" method="upgrade" group="editors-xtd"> 
     <name>test</name> 
     <author>Name</author> 
     <creationDate>Month 2013</creationDate> 
     <copyright>Month Name. All rights reserved.</copyright> 
     <license>GPL</license> 
     <authorEmail>Email</authorEmail> 
     <authorUrl>Your URL</authorUrl> 
     <version>1.0.0</version> 
     <description> 
      "adds the button 'test' to the editor" 
     </description> 
     <files> 
      <filename plugin="test">test.php</filename> 
     </files> 
</extension> 

チュートリアルPHPは正しく、次のとおりです。

<?php 

// no direct access 
defined('_JEXEC') or die('Restricted access'); 

jimport('joomla.plugin.plugin'); 

class plgButtonTest extends JPlugin { 

    function plgButtonTest(& $subject, $config) 
    { 
     parent::__construct($subject, $config); 
    } 
    function onDisplay($name) 
    { 
     $js = "      
     function buttonTestClick(editor) { 
          txt = prompt('Please enter something','123'); 
          if(!txt) return; 
           jInsertEditorText('{test '+txt+'}', editor); 
     }"; 
     $css = ".button2-left .testButton { 
        background: transparent url(/plugins/editors-xtd/test.png) no-repeat 100% 0px; 
       }"; 
     $doc = & JFactory::getDocument(); 
     $doc->addScriptDeclaration($js); 
     $doc->addStyleDeclaration($css); 
     $button = new JObject(); 
     $button->set('modal', false); 
     $button->set('onclick', 'buttonTestClick(\''.$name.'\');return false;'); 
     $button->set('text', JText::_('Test')); 
     $button->set('name', 'testButton'); 
     $button->set('link', '#'); 
     return $button; 
    } 
} 
?> 

あなたの助けありがとうございました。あなたが他のより良い方法を持っているなら、私は最も感謝しています。

+1

ありがたいことに、このチュートリアルのリンクは今は動作しないので、ここにコードを入れてください。 –

4

あなたのプラグインが正常にインストールした場合は、tinymceに設定高度なパラメータの Custom pluginCustom buttonにあなたのプラグイン名を入れplugins.Andインストール済みのプラグインは例えば以下published.See画像であることを確認する必要があります。

これはこのイメージenabled.see設定されている私のカスタムプラグインです: enter image description here

そしてtinymceプラグインの高度なパラメータに移動し、カスタムフィールドは、このイメージをoption.seeあり非常に最後の最後で確認を:

enter image description here

は、プラグイン名とEnterボタンをname.And記事マネージャエディタでボタンを見つけます。

+1

これは、tinymceボタンを追加したい場合にのみ、エディタ-xtdプラグインの下にボタンを追加したい場合ではありません。 – Elin

+0

おかげで竜巻。これは、ツールバーにカスタムアイコンボタンを追加するのに理想的ですが、私はもっと「もっと読む」ボタンのような大きなアイコンを望んでいます。グラフィックを使用していただきありがとうございます。 +1画像を使用します。 –

関連する問題