if ステートメントを作成するためのよりスマートな方法を作成したいと考えています。私はこれを行う関数を書いています:
if ( ! function_exists( 'get_meta' ) ) {
function get_meta($i) {
$fname_name = array(
'copyright_text',
'about_name',
'archive_name',
'contact_name',
'lenguage_name',
'cc_name',
'about_link',
'archive_link',
'contact_link',
'lenguage_link',
'cc_link',
'about_editors_name',
'about_responsibility_name',
'about_joinus_name',
'about_editors_link',
'about_responsibility_link',
'about_joinus_link'
);
foreach( $fname_name as $fname )
include_once( get_option($fname));
if ( $i ) return $fname_name[$i];
}
}
しかし、この関数が呼び出されると、次のエラーが返されます。
警告: include_once() [function.include]: 398 行目で local\wp-content\themes\net\0.6\functions.php に含めるための 'what' を開くことができませんでした (include_path='.;php\PEAR')
基本的に、get_option('');
各配列に追加して、たとえば次のように返します。
get_option('copyright_text');
またはさらに具体的には、次を返します。
get_option('copyright_text', '');
修繕:
自力で解決するしかないのですが、アドバイスをいただけると助かります。
foreach
andを使用する代わりにinclude_once
、さらに単純なソリューションを使用します。
if ($i) return get_option($fname_name[$i], '');
else if ($i == 0) return get_option($fname_name[0], '');