所以在模板中。php原始函数如下所示:
function meta_form() {
global $wpdb;
$limit = (int) apply_filters( \'postmeta_form_limit\', 30 );
$keys = $wpdb->get_col( "
SELECT meta_key
FROM $wpdb->postmeta
GROUP BY meta_key
HAVING meta_key NOT LIKE \'\\_%\'
ORDER BY meta_key
LIMIT $limit" );
if ( $keys )
natcasesort($keys);
与此同时,我办公室的某个人将其更改为: function meta_form() {
global $wpdb;
if ( isset($_GET[\'post\']) )
$post_id = (int) $_GET[\'post\'];
elseif ( isset($_POST[\'post_ID\']) )
$post_id = (int) $_POST[\'post_ID\'];
else
$post_id = 0;
if ( $post_id ) {
$post_ = get_post($post_id);
}
if ($post_->post_type == \'video_photo\' ){
$limit = (int) apply_filters( \'postmeta_form_limit\', 30 );
$keys = $wpdb->get_col( "
SELECT meta_key
FROM $wpdb->postmeta
where meta_key like \'tqmcf_%\'
GROUP BY meta_key
HAVING meta_key NOT LIKE \'\\_%\'
ORDER BY meta_key
LIMIT $limit" );
}else{
$limit = (int) apply_filters( \'postmeta_form_limit\', 30 );
$keys = $wpdb->get_col( "
SELECT meta_key
FROM $wpdb->postmeta
GROUP BY meta_key
HAVING meta_key NOT LIKE \'\\_%\'
ORDER BY meta_key
LIMIT $limit" );
}
if ( $keys )
natcasesort($keys);
我一直在做研究,看来对核心的任何更改都应该在我的主题功能中完成。php文件使用add\\u filter或add\\u action。走这条路对吗?我该怎么做?我仍然不太了解它们是如何工作的。提前感谢您的帮助。