duanmo6937
2015-05-08 07:00
浏览 14
已采纳

在数组和标题中使用PHP进行Wordpress术语创建

So I'm trying to create two categories when the user logs in. I need the category names to be the username of the user who is logging in.

I'm fairly new to PHP and I've been looking through the Codex and I know how to get the user information but I can't figure out how to make it output in the array or as the title.

The current code below is the closest I've gotten. It all works except the PHP code is not outputting. It shows as blank after the creation process.

function Login_CreateInitialCategories($user_login, $user) {

    $current_user = wp_get_current_user();
    wp_insert_term(
        '<?php  echo $current_user->user_login; ?>',
        'outings',
        array(
          'description' => '<?php echo $current_user->user_login ; ?> Outings',
          'slug'        => '<?php echo $current_user->user_login ; ?>-category'
        )
    );

    wp_insert_term(
        '<?php echo $current_user->user_login ; ?>',
        'adventures',
        array(
          'description' => '<?php echo $current_user->user_login ; ?> Adventures',
          'slug'        => '<?php echo $current_user->user_login ; ?>-category'
        )
    );

}
add_action('wp_login', 'Login_CreateInitialCategories', 10, 2);

Do you guys know a way to get around this? The code is actually working perfectly, it's just not responding/outputting the PHP code.

Below is a link to a picture of the result of the code above. (I would of posted it here, but I don't have enough reputation.)

https://www.dropbox.com/s/wamd6q3vd0odv7w/2015-05-08_02h52_10.png?dl=0

图片转代码服务由CSDN问答提供 功能建议

所以我在用户登录时尝试创建两个类别。我需要将类别名称作为用户名 登录的用户。

我对PHP很新,我一直在查看Codex,我知道如何获取用户信息,但我无法想象 如何在数组中输出或作为标题输出。

下面的当前代码是我得到的最接近的代码。 这一切都有效,除了PHP代码没有输出。 它在创建过程后显示为空白。

  function Login_CreateInitialCategories($ user_login,$ user){
 
 $ current_user = wp_get_current_user(); 
 wp_insert_term(
  '&lt;?php echo $ current_user-&gt; user_login;?&gt;',
'outings',
 array(
'description'=&gt;'&lt;?php echo $ current_user-&gt; user_login;?  &gt; Outings',
'slug'=&gt;'&lt;?php echo $ current_user-&gt; user_login;?&gt; -category'
)
); 
 
 wp_insert_term(
'&lt;  ?php echo $ current_user-&gt; user_login;?&gt;',
'ventventures',
 array(
'description'=&gt;'&lt;?php echo $ current_user-&gt; user_login;?&gt; Adventures  ',
'slug'=&gt;'&lt;?php echo $ current_user-&gt; user_login;?&gt; -category'
)
); 
 
} 
 ndd_action('wp_login','Login_CreateInitialCategories  ',10,2); 
   
 
 

你们有没有办法解决这个问题? 代码实际上工作得很好,它只是没有响应/输出PHP代码。

下面是上面代码结果图片的链接。 (我会把它贴在这里,但我没有足够的声誉。)

https://www.dropbox.com/s/wamd6q3vd0odv7w/2015-05-08_02h52_10.png?dl=0 \ n

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

3条回答 默认 最新

  • dongping2023 2015-05-08 16:56
    最佳回答

    Okay, so after working on a solution I decided to get the meta value directly and that worked.

    function Login_CreateInitialCategories() {
        $current_user = get_currentuserinfo();
        $user = get_user_meta($user_id = get_current_user_id(), nickname, true);
        wp_insert_term(
            $user, // the term 
            'outings', // the taxonomy
            array(
                'description'=> $user . ' Outings',
                'slug' => $user
    
      )
    );
    
        wp_insert_term(
            $user, // the term 
            'adventures', // the taxonomy
            array(
                'description'=> $user . ' Adventures',
                'slug' => $user
    
      )
    );  
    
    
    }
    
    add_action('wp_loaded', 'Login_CreateInitialCategories');
    
    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题