【问题标题】:How to perform an action in Wordpress only once - add_user_meta()如何在 Wordpress 中只执行一次操作 - add_user_meta()
【发布时间】:2019-07-15 13:32:49
【问题描述】:

根据问题,我的意图是只执行一次操作,这是因为我将编写的代码的行为会导致记录新记录,每次加载 Wordpress 时,我该如何克服这个问题?

add_action( 'admin_init', 'test' );
function test()
{
    add_user_meta(100, 'favorite_books', 'WordPress Dev Champ', false);
    add_user_meta(100, 'favorite_books', 'WordPress Lazy Coder', false);
    add_user_meta(100, 'favorite_books', 'WordPress The Hard Way', false);
}

总之,我的目标是让meta_value 与相同的meta key only and only 3 times 不同

【问题讨论】:

  • 你能解释一下吗?
  • @GufranHasan 你能从什么意义上解释它?已经解释过了,通过插件的形式执行这段代码,每次重新加载浏览器都会添加3条记录,我必须使用这段代码,但要确保记录只记录一次就可以了
  • 对于相同的 ID,它将覆盖这些值。您是否有任何特定的事件或原因要保存这些数据。
  • @GufranHasan 不,一点也不,它总是添加相同的值作为新记录 n 次每 n 页面加载
  • 你需要放一个条件if(empty(get_usermeta(100, 'favorite_books')))

标签: wordpress plugins


【解决方案1】:

你应该试试这个条件。这未经测试,但希望对您有用。

add_action( 'admin_init', 'test' );
function test()
{
if(empty(get_user_meta( 100, 'favorite_books', true ))){
    add_user_meta(100, 'favorite_books', 'WordPress Dev Champ', false);
    add_user_meta(100, 'favorite_books', 'WordPress Lazy Coder', false);
    add_user_meta(100, 'favorite_books', 'WordPress The Hard Way', false);

 }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-22
    • 2021-06-24
    • 1970-01-01
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多