mysql_fetch_object()
在PHP 5.5中被弃用,在PHP 7.0中被完全删除,这可能就是它不再适用于您的原因。使用WP函数总是更好的—通常它们是PHP(或其他地方)中某些内容的包装器,但通过使用WP包装器版本,它通常可以保护您免受抨击(因为WP方法可以更新以适应新的脚本语言更改)—这样您的核心代码就不需要更改。
尝试使用$wpdb->get_row()
. 它与您拥有的几乎相同,但更“WordPressy”:
function catImg( $catId ){
global $wpdb;
$data = $wpdb->get_row( $wpdb->prepare( \'SELECT * FROM `\' . $wpdb->prefix . \'ig_caticons` WHERE `cat_id` = %d\', absint( $catId ) ) );
if ( $data->icon ) {
echo \'<img height="158" width="121" title="" alt="skyway" class="attachment-post-thumbnail wp-post-image" src="\'. esc_url( site_url( esc_attr( $data->icon ) ) ) . \'"/>\';
} else {
echo \'<img height="158" width="121" alt="no-image" class="attachment-post-thumbnail wp-post-image" src="\'. site_url( \'/wp-content/themes/sky-way/images/no-image.jpg\' ) . \'"/>\';
}
}