WordPress 用のflickerRSS RUプラグインを使用しているクライアントのために働いています。ただし、ページごとに複数の関数呼び出しを配置しようとすると、error_log に次のエラーが記録されます。
PHP Fatal error: Cannot redeclare get_and_delete_option() (previously declared
in .../wp-content/plugins/flickrrss-ru/flickrrssRU.php:21) in
.../wp-content/plugins/flickrrss-ru/flickrrssRU.php on line 21
プラグイン呼び出しの最初は次のとおりです。
get_flickrRSSRU(array(
'set' => '72157624558519886',
'num_items' => 3,
'type' => 'set',
'html' => ' <a href="%flickr_page%" title="%title%"><img src="%image_square%" alt="%title%"/ height="68px" ></a>'));
に続く:
get_flickrRSSRU(array(
'set' => '72157624558519886',
'num_items' => 11,
'type' => 'set',
'html' => ' <a href="%flickr_page%" title="%title%"><img src="%image_square%" alt="%title%"/ height="75" ></a>'));
プラグインが WordPress 経由で読み込まれた場合に、これら 2 つの呼び出しがプラグインを再度初期化しようとする理由がわかりません。
使用されているこの特定の機能がプラグインにあることがわかりました。
$flickrRSSRU = new flickrRSSRU();
add_action( 'admin_menu', array(&$flickrRSSRU, 'setupSettingsPage') );
add_action( 'plugins_loaded', array(&$flickrRSSRU, 'setupWidget') );
register_activation_hook( __FILE__, array( &$flickrRSSRU, 'setupActivation' ));
function get_flickrRSSRU($settings = array()) {
global $flickrRSSRU;
$flickrRSSRU->printGallery($settings);
}