[英]Wordpress Custom Shortcode: Call to undefined function get_results()
我是一名開發人員,但對 PHP 或 Wordpress 缺乏經驗。 修補現有的 WP 站點(使用 Divi 主題,如果重要的話)並希望構建一些從 WP 數據庫中提取的短代碼。 在實驗中,我能夠使一些自定義簡碼正常工作(包括將新文件放入主題的functions.php)。 基本的工作正常,但是當我嘗試從 wpdb 讀取時,頁面會拋出此錯誤:
Error: Call to undefined function get_results() in <MY_FILE>
這是我的文件:
<?php
function list_users() {
global $wpdb;
$users = get_results("SELECT * FROM $wpdb->users");
$result = "<p>";
foreach ($results as $result) {
$result .= $result->display_name;
$result .= '<br>';
}
$result .= "</p>";
return $result;
}
add_shortcode( 'all_users', 'list_users' );
?>
對 PHP 新手有什么建議嗎?
您不需要從數據庫查詢中獲取用戶。 WordPress 提供get_users
function。 所以,你可以試試下面的代碼。
function list_users() {
ob_start();
$users = get_users();
foreach( $users as $user ) {
echo '<p>'. $user->data->display_name .'</p>';
}
$output = ob_get_contents();
ob_end_clean();
return $output;
}
add_shortcode( 'all_users', 'list_users' );
好的,答案很明顯,因為我沒有在 $wpdb 上調用 get_results。
這解決了它:
<?php
function list_users() {
global $wpdb;
$users = $wpdb->get_results("SELECT * FROM $wpdb->users");
$result = "<p>";
foreach ($results as $result) {
$result .= $result->display_name;
$result .= '<br>';
}
$result .= "</p>";
return $result;
}
add_shortcode( 'all_users', 'list_users' );
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.