小编Eme*_*ngo的帖子

即使在Wordpress中元值为空,如何检查自定义字段是否存在

我有一个非常好的工作条件来检查自定义字段是否存在,这是一行:

if (((get_post_meta($post->ID, $my_metakey, TRUE))=='')
Run Code Online (Sandbox Code Playgroud)

但是,正如您所注意到的,只有在元值设置为空时检查元键才有效.

我想知道如何检查数据库中是否已存在自定义字段名称/元键,即使我将元值设置为空或默认为空.

使用Wordpress有一种有效的方法吗?谢谢你的提示.

更新:这个也行不通:

<?php if (strlen(get_post_meta($post->ID, $metakey, true)) > 0) : ?>
Run Code Online (Sandbox Code Playgroud)

因为它类似于检查自定义字段是否为空.

wordpress custom-fields

2
推荐指数
1
解决办法
4083
查看次数

未捕获的TypeError:对象在更改jQuery加载方法时不是函数

这与此相关:在$(window).load()函数内运行jQuery,但不在$(document).ready函数内运行

在我使用之前:

jQuery( document ).ready( function( $ ) {
Run Code Online (Sandbox Code Playgroud)

加载我的jQuery UI位置代码,但我决定尝试加载使用:

jQuery(window).load(function($) {
Run Code Online (Sandbox Code Playgroud)

现在我收到一个错误:

Uncaught TypeError: object is not a function
Run Code Online (Sandbox Code Playgroud)

这是我更改之前的代码:

<script type='text/javascript'>
jQuery( document ).ready( function( $ ) {
var element_selector='.test';
if ( $(element_selector).length !== 0) {

var divname515e62e8355b0 = '#test_selector';
$(divname515e62e8355b0).children().wrapAll('<div class="mydoc cf">');

//jQuery UI Position code here

}

 });
</script>
Run Code Online (Sandbox Code Playgroud)

这是我改变后的代码:

<script type='text/javascript'>
jQuery(window).load(function($) {
var element_selector='.test';
if ( $(element_selector).length !== 0) {

var divname515e62e8355b0 = '#test_selector';
$(divname515e62e8355b0).children().wrapAll('<div class="mydoc cf">');

//jQuery UI Position code here …
Run Code Online (Sandbox Code Playgroud)

jquery

2
推荐指数
1
解决办法
6031
查看次数

什么是相同类名的jQuery选择器,但有一个被隐藏?

我瞄准这个div后添加HTML(使用jQuery之后):

<div class="wpv-setting-container wpv-setting-container-horizontal wpv-settings-layout-markup js-wpv-settings-layout-extra">
Run Code Online (Sandbox Code Playgroud)

由于某些原因,由于应用程序的技术要求,我被迫使用该类wpv-settings-layout-markup.但是,还有另一个div包含这个类,但它隐藏了:

<div style="display:none;" class="wpv-settings-templates wpv-setting-container wpv-setting-container-horizontal wpv-settings-layout-markup" id="attached-content-templates">
Run Code Online (Sandbox Code Playgroud)

现在,当我在jQuery方法之后使用类名时,它被添加到可见和不可见的div中.

$(".wpv-settings-layout-markup").after('data here');
Run Code Online (Sandbox Code Playgroud)

我该如何修改这个选择器:

$(".wpv-settings-layout-markup")
Run Code Online (Sandbox Code Playgroud)

仅定位可见的div?非常感谢.

jquery

2
推荐指数
1
解决办法
50
查看次数

如何将此准备语句转换为在 Wordpress $wpdb 中使用占位符?

我在 Wordpress 3.5 之前有一个完美工作的 wpdb 准备语句。这是我的台词:

$post_id = $wpdb->get_var($wpdb->prepare( "SELECT a.post_id
        FROM $metatable AS a
        JOIN $metatable AS b ON a.post_id = b.post_id
        WHERE a.meta_value = '$valuex1' AND b.meta_value = '$valuex2'"));
Run Code Online (Sandbox Code Playgroud)

现在,在 Wordpress 3.5 中,这会返回警告,因为尚未完全清理。我已按照 WordPress 的建议对此进行了修改以使用占位符:

$post_id = $wpdb->get_var($wpdb->prepare("SELECT a.post_id FROM $metatable AS a JOIN $metatable AS b ON a.post_id = b.post_id WHERE a.meta_value =%d AND b.meta_value =%s",$valuex1,$valuex2));
Run Code Online (Sandbox Code Playgroud)

但是,它不再从数据库中检索正确的信息。我修改后的查询有问题吗?如何更改它才能再次工作?

感谢您的帮助。

mysql wordpress

1
推荐指数
1
解决办法
4383
查看次数

标签 统计

jquery ×2

wordpress ×2

custom-fields ×1

mysql ×1