WP3.4.2をマルチサイト化(ここではA、Bのブログを作ったとします)。
カスタムフィールドをCustom Field Gui Utilityプラグインで作成して、カスタムフィールドで画像を挿入できるようにしています。
ブログBのトップページにて、ブログBのエントリーでカスタムフィールド画像を挿入、その画像をサムネイルで呼び出しました。
呼び出したコードは
<?php
$imagefield = get_imagefield('カスタムフィールドID');
$thumb = wp_get_attachment_image_src($imagefield['id'], 'thumbnail');
echo "<img src='$thumb[0]' />";
?>
です。これでBはサムネイルが呼び出されました。画像のURLは
http://ドメイン/ブログB/files/img-150×150.jpg
となっています。
そこでブログAで同じ画像を呼び出してみました。
ブログBから呼び出すのでswitch_to_blogを使い、
<?php switch_to_blog(2) ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<?php
$imagefield = get_imagefield('カスタムフィールドID');
$thumb = wp_get_attachment_image_src($imagefield['id'], 'thumbnail');
print $thumb[0];
?>
<?php endwhile; ?>
<?php endif; ?>
<?php restore_current_blog(); ?>
と書いたところ、呼び出した画像のURLが
http://ドメイン/ブログB/wp-content/blogs.dir/2/files/img-150×150.jpg
とURLが変わって取得され、画像が呼びされません。
wp_get_attachment_image_srcやswitch_to_blogを探ってみたのですが、どうしても問題部分が見つからなかったので、上記の内容で同じ事にぶつかり解決された方がいらっしゃいましたらご教授いただけたらと思います。
よろしく御願いいたします。