Wir bauen eine Seite mit 10-15 Fotografen, die Inhalte veröffentlichen. Es wird einen gemeinsamen Blog geben + jeder Administrator hat sein eigenes Portfolio zu verwalten. "Portfolio-Galerien" und "Portfolio-Seiten" sind zwei benutzerdefinierte Typen, die mit der benutzerdefinierten Taxonomie "Artist" kategorisiert werden.
Wir möchten alle Admins:
Schließlich möchten wir auch ein paar "Superadministratoren" haben, die Zugriff auf jeden Beitrag auf der Website haben.
Irgendwelche Ideen, wie man so etwas baut? Ist es überhaupt machbar?
EDIT Auf @ בניית אתרים Vorschlag hin habe ich ein bisschen mehr über Rollen und Fähigkeiten gelesen und festgestellt, dass Wordpress bereits die Möglichkeit zur Einschränkung von Funktionen unterstützt Benutzer können die Beiträge anderer Benutzer nicht bearbeiten. Alles, was ich tun musste, war, alle Benutzer auf Autoren anstatt auf Editoren umzustellen.
In Kürze werden # 1, # 2 und # 4 aus der obigen Liste aufgelöst. Ich muss noch # 3 zum Arbeiten mit save_post
bringen.
Kurz: Ja, das kannst du.
um alle Blog-Beiträge sehen zu können
die Standardeditorrolle kann es verwalten, alle Beiträge anzuzeigen
in der Lage sein, im Blog zu posten
auch hier kann die Standardeditorrolle alle Beiträge anzeigen
in der Lage sein, neue "Portfolio-Galerien" und "Portfolio-Seiten" hinzuzufügen und diese automatisch mit> der Taxonomie "Künstler" markieren zu lassen, die denselben Wert hat wie ihr Name (d. h. John Smith).
Dazu können Sie den Haken save_post
verwenden und dort automatisch den Benutzernamen als Taxonomie hinzufügen.
portfolio-Seiten und Galerien, die zu ihnen gehören, können nur angezeigt werden (d. h. John Smith sieht nur Portfolio-Seiten und Galerien, die mit Artist = "John Smith" gekennzeichnet sind).
wenn Sie Beitragstypen registrieren, können Sie Funktionen für diesen Beitragstyp definieren , und Sie müssen edit_others_posts als false definieren. Stellen Sie außerdem sicher, dass Ihr Beitragstyp den Autor unterstützt.
Schließlich möchten wir auch ein paar "Superadministratoren" haben, die Zugriff auf jeden Beitrag auf der Website haben.
die Standard-Administratorrolle ist in diesem Fall Ihr Freund. Grundsätzlich betreffen die meisten Ihrer Probleme Rollen und Funktionen
hoffe das hilft
Wenn ich derjenige sein werde, der diese Site erstellt, ist dies das, was ich für die "Anzeigen von Portfolio-Seiten und Galerien, die dazu gehören" tun werde:
1.) Ich erstelle eine neue Seitenvorlage, z. B. template-portfolio.php
in Ihrem Themenverzeichnis, die ungefähr so aussieht:
<?php
/*
Template Name: Portfolio
*/
if(is_user_logged_in() && current_user_can('manage_options')) //ensure that it is an admin, as per requirements
{
global $current_user;
get_currentuserinfo(); //information shall be stored in $current_user
// echo 'User ID: ' . $current_user->ID . "\n";
query_posts(array('Artists' => $current_user->display_name));
//do the loop here.
}
else
{
wp_redirect(get_bloginfo('url')); //go to home page if not logged in or if not admin
}
?>
2.) Ich würde eine Seite in WordPress erstellen und Portfolio als Seitenvorlage zuweisen
3.) Ich würde die Seite mit der Seitenvorschau betrachten und wenn es funktioniert, werde ich mich in den Hintergrund klopfen;)
Sie können hier eine Variante des Ablaufs für Ihre anderen Anliegen durchführen.