機能画像の設定に問題があります。同じページで同様の送信を数回使用して、管理領域の外に投稿を送信していますが、エラーは発生せず、この送信フォームのみです。
エラーレポートをトレースした後、 (twentyeleven テーマ)_get_non_cached_ids
にある機能に問題があることがわかりました。wp-includes/functions.php on line 3816
エラーは言う:Object of class WP_Error could not be converted to int
私がそれをテストするとit is not int
、それが得られたので、関数ケーシングのエラーを見つけようとします
_get_non_cached_ids
テストコードを含む関数の下
/**
* Retrieve ids that are not already present in the cache
*
* @since 3.4.0
*
* @param array $object_ids ID list
* @param string $cache_key The cache bucket to check against
*
* @return array
*/
function _get_non_cached_ids( $object_ids, $cache_key ) {
$clean = array();
foreach ( $object_ids as $id ) {
/* my test start */
if ( is_wp_error( $id ) ) {
$error_string = $id->get_error_message();
echo '<div id="message" class="error"><p>' . $error_string . '</p></div>';
exit;
}else{
echo 'id is ok';
exit;
}
/* my test end */
$id = (int) $id;
if ( !wp_cache_get( $id, $cache_key ) ) {
$clean[] = $id;
}
}
return $clean;
}
コードを試してみたところ、次のようなメッセージが表示されました。
No file was uploaded.
画像が正常にアップロードされ、投稿に添付されていても、どのようにファイルがアップロードされなかったのかFeatured image
そして、編集投稿の管理領域で、フィーチャー画像領域にエラーが表示されました:
Object of class WP_Error could not be converted to int in SITE_ROOT/public_html/wp-includes/post.php on line 4294
is_int かどうかをテストし、それが int だった
では、問題がある場合にのみ終了することに注意してください_get_non_cached_ids
。つまり、問題がない場合、コードはまったく_get_non_cached_ids
機能しません。