1. Halo Guest, pastikan Anda selalu menaati peraturan forum sebelum mengirimkan post atau thread baru.

Ask! Cara Bikin Tombol Shortcode Buat Tulisan Arab

Discussion in 'Wordpress' started by istrikucantik, Sep 26, 2012.

  1. istrikucantik

    istrikucantik Ads.id Starter

    Joined:
    Mar 29, 2012
    Messages:
    50
    Likes Received:
    5
    Kan ceritanya gini, blog ane banyak tulisan arabanya, terus uda aku bikinin shortcode kayak dibawah ini, nach supaya gak nulis manual shortcodenya, bagaimana caranya bikin tombol shortcode di menu editor postnya, jadi kalo misalkan kita ingin memasukkan shortode kita tinggal blok tulisan arab tersebut, terus kita klik tombol shortcode, jadi otomatis kita memasukkan tag [teksarab][/teksarab]
    Mohon dikasih tau cara bikin tombol shortcodenya, terima kasih sebelumnya!

    PHP:
    //fungsi shortcode
    function arabku$atts$content null ) {
    return 
    '<span style="font-family: "Traditional Arabic", serif;font-size: x-large;text-align: right;float:right;">' $content '</span>';
    }
    //hooking
    add_shortcode'teksarab''arabku' ); ?>
     
  2. amrimf

    amrimf Super Hero

    Joined:
    Jul 4, 2009
    Messages:
    2,915
    Likes Received:
    172
    Location:
    Purwokerto
    Pake cara gampang aja.
    Masukkan tulisan arabnya di blockquote
    Terus CSS buat blockquote di sesuaikan buat tulisan arab
     
  3. istrikucantik

    istrikucantik Ads.id Starter

    Joined:
    Mar 29, 2012
    Messages:
    50
    Likes Received:
    5
    Malah repot gan kalo kita ntar butuh blockquote beneran, semua tulisan huruf tegak jadi mbaca dari kanan, kan lucu.
    btw thanks atas replinya
     
  4. gembel-intelek

    gembel-intelek Lurker

    Joined:
    Mar 29, 2009
    Messages:
    4,341
    Likes Received:
    907
    Location:
    New Coral
    PHP:
    /**
     * Create teksarab shortcode
     *
     * http://codex.wordpress.org/Shortcode_API
     */
    function arabku$atts$content null ) {
        return 
    '<span style="font-family:Traditional Arabic, serif;font-size: x-large;text-align: right;float:right;">' $content '</span>';
    }

    //hooking
    add_shortcode'teksarab''arabku' );

    /**
     * Create teksarab button
     *
     * http://codex.wordpress.org/TinyMCE_Custom_Buttons
     */
    function teksarab_editor_button() {
        
    // Don't bother doing this stuff if the current user lacks permissions
        
    if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') )
        return;
        
        
    // Add only in Rich Editor mode
        
    if ( get_user_option('rich_editing') == 'true') {
            
    add_filter('mce_external_plugins''teksarab_js');
            
    add_filter('mce_buttons''teksarab_register_button');
        }
    }

    // init process for button control
    add_action('init''teksarab_editor_button');

    //Add button to the button array.
    function teksarab_register_button($buttons) {
        
    array_push($buttons'teksarab');
        return 
    $buttons;


    // Load the TinyMCE plugin : teksarab.js
    function teksarab_js($plugin_array) {
        
    $plugin_array['teksarab'] = get_bloginfo('template_url').'/teksarab.js';
        return 
    $plugin_array;
    }

    simpan di folder theme as teksarab.js, kalo nyimpennya di dalem folder, sesuaikan url teksarab.js function diatas

    PHP:
    (function() {
        
    tinymce.create('tinymce.plugins.teksarab', {
            
    /**
            * Initializes the plugin, this will be executed after the plugin has been created.
            * This call is done before the editor instance has finished it's initialization so use the onInit event
            * of the editor instance to intercept that event.
            *
            * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.
            * @param {string} url Absolute URL to where the plugin is located.
            * @param {string} image Image url
            * 
            * http://www.tinymce.com/wiki.php/Creating_a_plugin
            */
            
    init : function(edurl) {
                
    // Register teksarab button
                
    ed.addButton('teksarab', {
                    
    title 'Tambah Teks Arab',
                    
    image 'http://www.kingston.vic.gov.au/Page/images/Icon_Arabic.gif'// ini gambar boleh didunlud kalo mau
                    
    onclick : function() {
                        
    ed.selection.setContent('[teksarab]' ed.selection.getContent() + '[/teksarab]');

                    }
                });
            },
            
    createControl : function(ncm) {
                return 
    null;
            },
        });
        
    // Register plugin
        
    tinymce.PluginManager.add('teksarab'tinymce.plugins.teksarab);
    })();
     
    istrikucantik likes this.
  5. istrikucantik

    istrikucantik Ads.id Starter

    Joined:
    Mar 29, 2012
    Messages:
    50
    Likes Received:
    5
    TErima kashi banyak, tapi sayang gak berhasil, uda aku terapin kodenya malah BLANK[-(

    ---------- Post added at 06:34 PM ---------- Previous post was at 05:32 PM ----------

    Oh ya aku nyobanya aku jadiin plugin, soalnya function.php kalo di utak-atik, error mlulu.
    Bisa di jadiin plugin gak mas gembel-intelek, biar bisa aku download.
    MAKASIH BUANYAKKKKKK
     
  6. gembel-intelek

    gembel-intelek Lurker

    Joined:
    Mar 29, 2009
    Messages:
    4,341
    Likes Received:
    907
    Location:
    New Coral
    istrikucantik likes this.
  7. istrikucantik

    istrikucantik Ads.id Starter

    Joined:
    Mar 29, 2012
    Messages:
    50
    Likes Received:
    5
    WAduh Makasih Buanyak Looh, Dah berhasil SEkarang:kiss::kiss::kembang:
     

Share This Page