কাস্টম tinyMCE বোতামের সাহায্যে একটি wp_editor উদাহরণ তৈরি করা


19

wp_editor()কাস্টম টেনিএমসিই বাটনগুলির সাথে সংজ্ঞা দেওয়ার কোনও উপায় আছে ?

আমি wp_editor ফাংশন রেফারেন্স উল্লেখ করেছি যে $settingsআর্গুমেন্ট এক হতে পারে tinymce (array) (optional) Load TinyMCE, can be used to pass settings directly to TinyMCE using an array()

আমার পৃষ্ঠাটি বিভিন্ন সংখ্যক দৃষ্টান্ত ব্যবহার করে এবং আমি নির্দিষ্ট দৃষ্টান্তগুলিতে নির্দিষ্ট বোতাম যুক্ত করতে চাই।

উদাহরণ স্বরূপ,

Instance #1 : Standard buttons
Instance #2 : bold, italic, ul + (custom) pH, temp
Instance #3 : bold, italic, ul + (custom) min_size, max_size

কেউ কি জানেন যে আমি এই টিউটোরিয়াল অনুসারে যদি ইতিমধ্যে ছোট্টএমসিই প্লাগইন হিসাবে বোতামগুলি নিবন্ধভুক্ত করেছি তবে আমি কীভাবে এটি করতে যাব ?


সম্পাদনা

এই কাজটি পেতে আমি আমার প্লাগইন ফাইলে কোডটি ব্যবহার করছি:

function add_SF_buttons() {
    if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') )
        return;
    if ( get_user_option('rich_editing') == 'true') {
        add_filter('mce_external_plugins', 'add_SF_buttons_plugins');
    }
}

function add_SF_buttons_plugins($plugin_array) {
    $plugin_array['pH'] = $this->plugin_url . '/js/tinymce_buttons/pH.js';
    $plugin_array['pH_min'] = $this->plugin_url . '/js/tinymce_buttons/pH_min.js';
    $plugin_array['pH_max'] = $this->plugin_url . '/js/tinymce_buttons/pH_max.js';
    return $plugin_array;
}

-

if (isset($SpeciesProfile)) {
    add_action( 'init' , array (&$SpeciesProfile, 'register_species' ));
    add_action( 'init' , array( &$SpeciesProfile, 'register_species_taxonomies' ));

    add_action( 'init', array (&$SpeciesProfile, 'add_SF_buttons' ));
}

-

<?php wp_editor( $distribution, 'distribution', array( 'theme_advanced_buttons1' => 'bold, italic, ul, pH, pH_min', "media_buttons" => false, "textarea_rows" => 8, "tabindex" => 4 ) ); ?>

দুর্ভাগ্যক্রমে, এটি কাজ করে না - উপরের সম্পাদকটি কেবল পৃষ্ঠায় প্রতিটি অন্যান্য উদাহরণের মতো একই বোতামগুলি প্রদর্শন করে।


আগাম ধন্যবাদ,

উত্তর:


13

বর্ণনা অনুসারে আপনার বেশ কিছু ছিল।

আপনি 2 এবং 3 দৃষ্টান্তগুলির জন্য যা খুঁজছেন তা এখানে (উদাহরণস্বরূপ 1 আপনি বোতামগুলির ডিফল্ট সেট পেতে সেটিংসটি খালি রাখতে পারেন):

উদাহরণ 2:

wp_editor(
    $distribution,
    'distribution',
    array(
      'media_buttons' => false,
      'textarea_rows' => 8,
      'tabindex' => 4,
      'tinymce' => array(
        'theme_advanced_buttons1' => 'bold, italic, ul, pH, temp',
      ),
    )
);

উদাহরণ 3 (আপনি 4 টি সারি দেখিয়ে TinyMCE এর জন্য নির্ধারণ করতে পারেন):

wp_editor(
    $distribution,
    'distribution',
    array(
      'media_buttons' => false,
      'textarea_rows' => 8,
      'tabindex' => 4,
      'tinymce' => array(
        'theme_advanced_buttons1' => 'bold, italic, ul, min_size, max_size',
        'theme_advanced_buttons2' => '',
        'theme_advanced_buttons3' => '',
        'theme_advanced_buttons4' => '',
      ),
    )
);

আমি আপনাকে প্রস্তাব দিচ্ছি যে আপনি ডাব্লুপিইপিডিটর () ফাংশনের অভ্যন্তরে যে সেটিংসটি ব্যবহার করেন সেটি কীভাবে ডাব্লুপি আপনি কীভাবে সেটিংসকে পার্স করে তা বোঝার জন্য wp-includes/class-wp-editor.phpফাইলটি (বিশেষত editor_settingsলাইন 126 এ ফাংশন) পরীক্ষা করে দেখুন। এছাড়াও, টিনিএমসিইটির কার্যকারিতা এবং এর সূচনা বিকল্পগুলি (যা আমি ডাব্লুপি সমর্থন পুরোপুরি বিশ্বাস করি না) সম্পর্কে আরও জানতে এই পৃষ্ঠাটি দেখুন।


ও হে বন্ধু. উত্তরের জন্য ধন্যবাদ. আমি আমার আসল পোস্টে কিছু কোড যুক্ত করেছি যা আমি বিশ্বাস করি, আপনার উত্তর থেকে বিচার করে কাজ করা উচিত - তবে তা হয় না। আপনি কি একবার দেখতে পারেন?
ডানচ

আমি ক্ষুদ্রায়ণ-নির্দিষ্ট পরামিতিগুলিকে তাদের নিজস্ব অ্যারেতে গুটিয়ে রাখতে ভুলে গেছি। আমি উত্তরটি সম্পাদনা করেছি এবং আপনার প্রশ্নটি জেনে রাখা অন্যান্য পরামিতিগুলি যুক্ত করেছি। এটা কেমন চলছে আমাকে জানাও?
টমাস বুটেলার

1
এও মনে রাখবেন যে অন্যরা (আমি!) কীভাবে নিজেরাই এটি করতে হয় তা জানতে আগ্রহী, সুতরাং ডান এবং কেবল দুপুরের সাথে সুনির্দিষ্ট কোনও উত্তরকে রূপান্তর করার চেষ্টা করবেন না। আপনি কি কোনও সম্পর্কিত ডাব্লুপি / টিনিএমসিই ডকুমেন্টেশনে লিঙ্কগুলি যুক্ত করতে পারেন?
টম জে নওয়েল

দুর্দান্ত, এটি কাজ করে বলে মনে হচ্ছে। দুর্ভাগ্যক্রমে আমার বোতামগুলি নয়, তবে এটি একটি পৃথক প্রশ্ন :) ধন্যবাদ টিবুটেলার।
ডানচ

আপনাকে স্বাগতম! @ টমজেউওয়েল, আমি প্রস্তাবিত পাঠের সাথে একটি শেষ অনুচ্ছেদ যুক্ত করেছি, পরামর্শের জন্য ধন্যবাদ!
টমাস বুটেলার

9

আপনি wp_editor () ফাংশনে অ্যারের মাধ্যমে প্যারামগুলি সেট করতে পারেন; একটি বিমূর্ত

$settings = array(
    'tinymce'       => array(
        'setup' => 'function (ed) {
            tinymce.documentBaseURL = "' . get_admin_url() . '";
        }',
    ),
    'quicktags'     => TRUE,
    'editor_class'  => 'frontend-article-editor',
    'textarea_rows' => 25,
    'media_buttons' => TRUE,
);
wp_editor( $content, 'article_content', $settings ); 

আপনি 'tinymce' প্যারামে অ্যারের মাধ্যমে মানগুলি সেট করতে পারেন, 'tinymce' => সত্য, // লোড TinyMCE, অ্যারে () ব্যবহার করে সরাসরি TinyMCE এ সেটিংস পাস করার জন্য ব্যবহার করা যেতে পারে এছাড়াও এর প্যারামগুলি সম্পর্কেও পাওয়া সম্ভব button: theme_advanced_buttons1, theme_advanced_buttons2, theme_advanced_buttons3,theme_advanced_buttons4

array( 'theme_advanced_buttons1' => 'bold, italic, ul, pH, temp' )

এছাড়াও আপনি কাস্টম বোতাম তৈরি করতে ফিল্টার হুকের মাধ্যমেও পেতে পারেন, উদাহরণও

function fb_change_mce_options($initArray) {
    // Comma separated string od extendes tags
    // Command separated string of extended elements
    $ext = 'pre[id|name|class|style],iframe[align|longdesc|name|width|height|frameborder|scrolling|marginheight|marginwidth|src]';
    if ( isset( $initArray['extended_valid_elements'] ) ) {
        $initArray['extended_valid_elements'] .= ',' . $ext;
    } else {
        $initArray['extended_valid_elements'] = $ext;
    }
    // maybe; set tiny paramter verify_html
    //$initArray['verify_html'] = false;
    return $initArray;
}
add_filter( 'tiny_mce_before_init', 'fb_change_mce_options' );

এছাড়াও আপনি সরাসরি বোতামগুলি ফিল্টার করতে পারেন; প্রতিটি লাইনে একটি প্রতিটি ফিল্টার আছে: mce_buttons, mce_buttons_2, mce_buttons_3,mce_buttons_4

হুকের উপরের উদাহরণগুলির জন্য নিম্নলিখিত প্যারামগুলি ডিফল্ট: tiny_mce_before_init

'mode' => 'specific_textareas'
'editor_selector' => 'theEditor'
'width' => '100%'
'theme' => 'advanced'
'skin' => 'wp_theme'
'theme_advanced_buttons1' => 'bold,italic,strikethrough,|,bullist,numlist,blockquote,|,justifyleft,justifycenter,justifyright,|,link,unlink,wp_more,|,spellchecker,fullscreen,wp_adv'
'theme_advanced_buttons2' => 'formatselect,underline,justifyfull,forecolor,|,pastetext,pasteword,removeformat,|,media,charmap,|,outdent,indent,|,undo,redo,wp_help'
'theme_advanced_buttons3' => ''
'theme_advanced_buttons4' => ''
'language' => 'de'
'spellchecker_languages' => 'English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,+German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv'
'theme_advanced_toolbar_location' => 'top'
'theme_advanced_toolbar_align' => 'left'
'theme_advanced_statusbar_location' => 'bottom'
'theme_advanced_resizing' => true
'theme_advanced_resize_horizontal' => false
'dialog_type' => 'modal'
'relative_urls' => false
'remove_script_host' => false
'convert_urls' => false
'apply_source_formatting' => false
'remove_linebreaks' => true
'gecko_spellcheck' => true
'entities' => '38,amp,60,lt,62,gt'
'accessibility_focus' => true
'tabfocus_elements' => 'major-publishing-actions'
'media_strict' => false
'paste_remove_styles' => true
'paste_remove_spans' => true
'paste_strip_class_attributes' => 'all'
'wpeditimage_disable_captions' => false
'plugins' => 'safari,inlinepopups,spellchecker,paste,wordpress,media,fullscreen,wpeditimage,wpgallery,tabfocus'

দেখতে এই লিঙ্কে প্রবেশ করার জন্য আরো infos জন্য।


7

আমাকে ডাব্লুপি উত্স ফাইলগুলি খনন করতে হয়েছে বলে এটি আপডেট করতে

$settings = array(
    'tinymce' => array(
        'toolbar1' => 'bold, italic',
        'toolbar2' => '',
    ),
    'wpautop' => false,
    'media_buttons' => false,
);

আমি মনে করি এটি টিনেমস 4 এর সাথে পরিবর্তিত হয়েছিল।


1
$args = array(
    'tinymce'       => array(
        'toolbar1'      => 'bold,italic,underline,separator,alignleft,aligncenter,alignright,separator,link,unlink,undo,redo',
        'toolbar2'      => '',
        'toolbar3'      => '',
    ),
);
wp_editor( $content, $editor_id, $args );
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.