wordpress增加投稿者上传权限

  这个问题也是起源于音乐站的设定,用插件控制用户投稿不科学,因为插件多了太卡了,用代码控制更简单。
  直插正题上代码:
  使用文本编辑器打开当前主题目录下的functions.php,添加以下代码即可

<span style="color:#708">if</span> ( <span style="color:#000">current_user_can</span>(<span style="color:#a11">'contributor'</span>) &amp;&amp; !<span style="color:#000">current_user_can</span>(<span style="color:#a11">'upload_files'</span>) )<br>  <span style="color:#000">add_action</span>(<span style="color:#a11">'admin_init'</span>, <span style="color:#a11">'allow_contributor_uploads'</span>);<br><br><span style="color:#708">function</span> <span style="color:#000">allow_contributor_uploads</span>() {<br>  <span style="color:#000">$contributor</span> = <span style="color:#000">get_role</span>(<span style="color:#a11">'contributor'</span>);<br>  <span style="color:#000">$contributor</span>-&gt;<span style="color:#000">add_cap</span>(<span style="color:#a11">'upload_files'</span>);<br>}

  上述代码执行过一次后,投稿者的权限设置将储存到数据库中,即使你移除以上代码,投稿者也依然拥有上传文件的权限。如果你想剥夺投稿者上传文件的权限,你可以使用以下代码来替换上面。

<span style="color:#708">if</span> ( <span style="color:#000">current_user_can</span>(<span style="color:#a11">'contributor'</span>) &amp;&amp; <span style="color:#000">current_user_can</span>(<span style="color:#a11">'upload_files'</span>) )<br>  <span style="color:#000">add_action</span>(<span style="color:#a11">'admin_init'</span>, <span style="color:#a11">'allow_contributor_uploads'</span>);<br><br><span style="color:#708">function</span> <span style="color:#000">allow_contributor_uploads</span>() {<br>  <span style="color:#000">$contributor</span> = <span style="color:#000">get_role</span>(<span style="color:#a11">'contributor'</span>);<br>  <span style="color:#000">$contributor</span>-&gt;<span style="color:#000">remove_cap</span>(<span style="color:#a11">'upload_files'</span>);<br>}

  3.5.1亲测没有任何问题。