Funkció előhívása bejegyzésből

A randomimage plugint kicsit kiegyeltem és így van egy funtion-om (pluginem), ami pont úgy működik ahogy kellene.











php-ből szépen lő is tudom hívni




<?php rndimg(); ? >


Itt még paramétert is át tudok adni.





pl, rndimg('20','.jpg') akkor a 20-sa catIDből a .jpg képekkel foglalkozik.





Ami a lényeg.


Már több pluginnél láttam, hogy a bejegyzésből meg lehet hívni egy funkciót a [ ] zárójelek közzé rakott meghívással





pl. [buy_button]





Ilyet szeretnék az én function-omhoz is.


Legtutibb az lenne, ha paramétert is át tudnék adni.





Egy nagy bajom van, hogy nem tudom minek nevezik ezt a [ ] funkciót.


Kerestem, de így nem találtam semmi értelmeset.





Segítsetek, hogy mi ennek a szögletes zárójeles meghívásnak a neve


hogyan lehet paramétert átadni.





Előre is köszi!

Tovább kerestem és az alábbi kódrészletet találtam az egyik pluginnél:











function ddle_generate($content) {











if (strpos($content, “”) !== FALSE) {





$content = str_replace("", dd_last_from_each(), $content);





}











return $content;





}











add_filter(‘the_content’, ‘ddle_generate’);

















Míg máshol is hasonló van (ez csak a bevezetője a quickshop plugin megfelelő részének):











add_filter(‘the_content’, ‘quickshop_button_post’);





function quickshop_button_post($content)





{











if (!get_option(‘quickshop_logged’) || is_user_logged_in())





{











$addcart = get_option(‘quickshop_addcart’);











if (!$addcart || ($addcart == ‘’) )





$addcart = ‘Add to Cart’;











$pattern = ‘#[quickshop:.+:price:#’;





preg_match_all ($pattern, $content, $matches);











foreach ($matches[0] as $match)





{





$pattern = ‘[quickshop:’;





$m = str_replace ($pattern, ‘’, $match);





$pattern = ‘:price:’;





$m = str_replace ($pattern, ‘’, $m);











$pieces = explode(’|’,$m);











(itt nem folytatom tovább, mert a readme-ben megadott formarészeket vizsgálja és darabolja)





[quickshop:NAME_OF_YOUR_PRODUCT:price:YOUR_PRODUCT_PRICE:shipping:YOUR_SHIPPING_PRICE:shipping2:SHIPPING_PRICE_FOR_MULTIPLE_PRODUCTS_AFTER_FIRST:end]

Vagy lehet, hogy valamilyen php plugin adja a megoldást?





pl. php exect











http://priyadi.net/archives/2005/03/02/WordPress-php-exec-plugin/











Nagyon egyszerű a kódja. igazából pont azt a működést csinálja amire én gondoltam.

Szerintem erre van szükséged:











http://codex.wordpress.org/Shortcode_API

Aha, erre gondoltam.





Megyek tanulmányozom tovább.





Köszi

Megküzdöttem vele, de már működik.











Legnagyobb problémám az volt, hogy a paramétert hogy tudom átvinni. De a codex mintaoldala és a mintapéldák segítettek.











Nem rakom ide be a kódot, mert elég hosszú.