در این نوشته میخواهیم در قالب یک پروژه آموزش دهیم که چطور در وردپرس شورت کد ایجاد کنید. این آموزش از سری مجموعه آموزشهای پیشرفتهی وردپرس است. اگر شما اشنایی نسبی با زبان برنامه نویسی php داشته باشید این آموزش را راحت تر میتوانید درک کنید.
پروژهی مد نظر ما این است که میخواهیم یک دکمه ی توییتر ایجاد کنیم و به صورت شورت کد در وردپرس استفاده کنیم. خب بیاید اولین شورت کد خودمونو بنویسیم.
فرض کنید من میخوام بنویسم من را در توییتر دنبال کنید، و فقط این کد و در پست خودم قرار بدم: [twitter]
برای ایجاد شرت کد در وردپرس از فانکشنی به نام add_shortcode() استفاده میکنیم که دو پارامتر میگیرد، اولی نام شورت کد و دومی فانکشن ما. به کد زیر دقت کنید:
<?php /* Plugin Name: My ShortCode Plugin URI: http://darkoobweb.com Description: Follow Me On Twitter Version: 1.0 Author: Pouria Parhami Author URI: http://darkoobweb.com */ add_shortcode('twitter',function(){ return '<a href="http://twitter.com/PouriaParhami">Fowllo Me On Twitter </a>';
ما اکانت تویتتر را یه صورت هارد کد نوشتیم اما این خوب نیست بهتره به صورت یک اتریبیوت آن را دریافت کنیم. [twitter username=”hoomanxx”]
</pre> add_shortcode('twitter',function($atts){ if(!isset($atts['username']))$atts['username'] = 'PouriaParhami'; return '<a href="http://twitter.com/'.$atts['username'].'">Fowllo Me On Twitter </a>'; }); <pre>
خب اگر کاربر username را وارد نکنه به سایت twitter انتقال داده میشه، اما اینجا چک میکنیم اگر خالی بود برو به اکانت پوریا. چطوره کاری کنیم تا متنی که نمایش داده میشود نیز در پست قابل تغییر باشد مانند :
[tiwtter username=”hoomanxx”] Follow Me [/twitter]
به صورت زیر میتوانیم این کار را انجام دهیم:
add_shortcode('twitter',function($atts,$content){ if(!isset($atts['username']))$atts['username'] = 'PouriaParhami'; if(empty($content)) $content = 'Follow Me On Twitter...'; return '<a href="http://twitter.com/'.$atts['username'].'">'.$content.' </a>'; });
به شکل بهتری هم میتونیم این کد را بنویسیم پس به کد زیر دقت کنید:
</pre> add_shortcode('twitter', function ($atts, $content) { $atts = shortcode_atts( array( 'username' => 'PouriaParhami', 'content' => !empty($content) ? $content : 'Follow Me On Twitter...' ), $atts ); return '<a href="http://twitter.com/' . $atts['username'] . '">' . $atts['content'] . ' </a>'; }); <pre>
همچنین میشود این کد را به صورت زیر هم نوشت:
add_shortcode('twitter', function ($atts, $content) { $atts = shortcode_atts( array( 'username' => 'PouriaParhami', 'content' => !empty($content) ? $content : 'Follow Me On Twitter...' ), $atts ); extract($atts); return "<a href='http://twitter.com/$username'>$content</a>"; });
به همین سادگی. کار ما تمام است. حالا شما یک شورت کد در وردپرس ایجاد کردید که هرجا در وردپرس خود قرار دهید دکمه ای برای فالوی توییتر نمایش میدهد.
امیدوارم این آموزش مورد استفاده قرار گیرد. در آموزشهای بعدی همین شورت کد را کمی گسترش میدهیم تا بتوانیم آخرین توییت ها هم نمایش دهیم.