質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

2237閲覧

WordPressカスタマイズ カスタム投稿タイプで寄稿者の記事管理をしたいです。

lingwood

総合スコア40

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

1グッド

0クリップ

投稿2017/03/03 04:52

編集2017/03/06 08:53

###内容
お世話になります。
ご教示いただけませんでしょうか。

いまWordPressでサイトを構築しています。
サイトを管理する「管理者」と記事を書く「寄稿者」で分けて
運営するという案件に直面しています。

そこで、カスタムポストUIを使用しまして“ブログを書く”という
カスタム投稿タイプを作成し、WordPress管理画面の“ユーザー”から
管理者と寄稿者を作成しました。

寄稿者には記事を書いてもらいレビュー待ちの記事を
管理者がチェックして公開するという流れです。

ここまでは通常の流れかと思いますが、記事一覧の「すべて」や「ゴミ箱」
の中に他の方が書いた記事の一覧が見れてしまうのを何とかしたく悪戦苦闘しています。

他人の記事の編集や削除はできないため最悪、ネット上にある施策で対策をとるでも
良いのですが、やはりクライアント利便な動きを提供してあげたいです。

やりたい事ですが、各々の記事一覧画面で以下のようになっているのが理想です。

【管理者】
すべて(30)|下書き (15) | 公開済み(7) | 保留中 (8) | ゴミ箱 (9)

※所有はあってもなくても良いです。

【寄稿者】
所有(5)|下書き (3) | 公開済み(1) | 保留中 (1) | ゴミ箱 (0)

というような形です。
ただ、条件がありまして、子テーマにfunctions.phpは追加できるのですが、
元となるwordPressのコードは一切触ってはいけないことになっています。

##試したこと

ネット上の情報をいくつか試したのですが、
◆Simple Colorsさん
http://www.warna.info/archives/2557/

こちらの方法では、functions.phpへコードを書いて、
()内の数字はCSSで消すということで、試したところ、
・他人の記事は表示されなくなりました。
・CSSで()内を非表示にできました。
・ただ、管理者まで他人の記事が見れなくなりました。
・また、“レビュー待ち”の記事も見れない、触れない状態となりました。

◆calmtechさん
http://www.calmtech.net/2015/04/09/how-to-hide-other-posts-from-contributor/
◆ショウジンブログさん
http://blog.showzine.co/entry/hide_others-posts

併せまして、『表示を所有だけにする』
上記ほぼ同じ内容でしたので参考にしながらやってみましたところ、
・管理者まで「所有」だけになってしまいました。
・“レビュー待ち”の記事は記事一覧から見ることができました。
ただ、ゴミ箱などは記事を書いていただく人にも見れた方が良いですし、
あくまで表示だけを消しているようなので、所有以外の項目を表示させると
やはり中に他人の記事が入っていてしまうため最終手段だと思っています。

その他には、カスタム投稿タイプなので権限が付けられていないと思って
User Role Editorを使い管理者と寄稿者に分けた(つもり)なんですが・・・

問題は、管理者まで寄稿者と同じ表示になってしまうというところかと思っています。

何でも試すことは全然手間ではないのですが、
理解力が乏しいためズバリで教えて頂けましたら幸いです。

何卒よろしくお願いします!

###解決致しました。
kei344様にご教示頂いた条件分岐と
◆Simple Colorsさんhttp://www.warna.info/archives/2557/
の情報を組み合わせ解決いたしました。

最終的に()内のカウントと「すべて」の項目はCSSでdisplay:noneにし
対応いたしました。このCSSも条件分岐でできました。

ありがとうございました。

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

問題は、管理者まで寄稿者と同じ表示になってしまう

条件分岐すればよいのでは?

【WordPress:ユーザー権限や情報によって条件分岐を行う方法 | NxWorld】
http://www.nxworld.net/wordpress/wp-current-user-can-and-get-currentuserinfo.html

投稿2017/03/05 06:12

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lingwood

2017/03/06 08:44

kei344様 お世話になります。 ご連絡が遅くなり大変失礼いたしました。 ありがとうございました!! ご教示の通り条件分岐でできました! すっかり条件分岐のことなど忘れてやっておりました。 でも教えていただかなかったら自力で条件分岐にたどり着くこともありませんでした。 本当にありがとうございます。 とても助かりました。 また何かの際にもどうぞよろしくお願い申し上げます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問