Verschillende auteurs per item in Drupal, deel 2

Het is nog altijd allemaal academisch, maar ik vind dat ik dringend wat meer Drupal moet leren (zoals ik om de zes maand zeg, ik weet het).

Zegt Jensen in een reactie alhier:

Je kan altijd meerdere auteurs aan 1 content type linken met de user_reference module die standaard bij CCK zit.

Hm. Dat is ook een mogelijkheid, natuurlijk. CCK laat me toe om een onbeperkt aantal auteurs toe te voegen, en heeft propere autocomplete.

Dan moet ik wel 844 auteurs aanmaken bij het overzetten (geen probleem, vermoed ik), maar moeten er bij het schrijven van artikels ook users aangemaakt worden — geen idee hoe gemakkelijk dat is.

Ik kijk dat tweede eerst na, want daar staat of valt het mee.

*
*    *

Eerst een “auteur”-veld toevoegen aan mijn “artikel”-content type: label is “Auteur”, field_name is “field_author” (vraag mij niet waarom ik dat in het Engels zet, maar zo is het nu eenmaal), type of data is “User reference” en form element is “Autocomplete text field”. Save.

Ik krijg een tweede scherm, waar ik settings voor het auteur-veld moet kiezen: autocomplete matching is “contains”, ik voeg een reverse link naar de referenciërende node toe op het user record (geen idee wat dat doet, met wat geluk een automatische lijst van artikels geschreven), een korte help tekst, en dan zit ik aan mijn eerste dilemma.

Moet het veld required zijn of niet? Met andere woorden: zorg ik ervoor dat de user die een artikel in Drupal ingeeft meteen ook de “primaire” auteur is (met het “risico” dat het een fotograaf kan zijn bijvoorbeeld en dat er dan moet gefiedeld worden), of verplicht ik iedereen om expliciet een auteur te kiezen?

Ik denk dat ik voor dat laatste ga.

…oh, hang on: ik bedenk net iets. Als ik het veld niet verplicht maak, dan kan ik voorzien dat bijvoorbeeld actua, die op Gentblogt een soort press review vaak zonder eigen tekst is, géén auteur heeft.

…of nee, dan kan ik voorzien dat een actua-bericht als “auteur” de naam van de bron heeft. Yep: dan is “De Gentenaar” en “De Standaard” een auteur als een andere. Ha! Goed plan. Het veld blijft dus verplicht.

Default value zet ik op “Redactie”, en number of values “unlimited”. User roles en user status that can be referenced? Aargh, nu heb ik alleen “authenticated user”. Wat doe ik daarmee? Een nieuwe user class aanmaken dan maar?

Eerst eens kijken hoe gemakkelijk users toe te voegen zijn.

Ik ga eerst een user role “redactie” toevoegen: dat worden mensen die artikels kunnen schrijven (en beelden uploaden, en dergelijke) en die in dit model dus ook nieuwe users moeten kunnen aanmaken.

Administer › User management › Roles › Add role, tot zover tot zo gemakkelijk. Edit permissions: redactieleden mogen alles doen op alle nodes, en alles doen in de user module. Eens zien wat dat geeft.

Hm. Als ik inlog met een gebruiker die enkel “redactie” is, dan heb ik default blijkbaar enkel My account, Create content en Log out als menu-opties, en geen “add user” of zo. Eens kijken hoe het daarmee zit. Er is ook een menu_per_role module, maar zou dat geen overkill zijn? Ik kan natuurlijk altijd manueel naar /drupal/admin/user gaan… euh, nee. Tiens. Ik heb geen toegang tot die pagina, zelfs al dacht ik dat ik er mij toegang toe gegeven had.

Ah, disregard previous: ik was uit het oog verloren dat ik “access administration pages” moet aanzetten voor de redactie-rol. Ahem.

…en dat ziet er eigenlijk allemaal uitstekend uit: artikels kunnen meer dan één auteur hebben (die gemakkelijk aan te maken is door redactieleden), en per auteur heb ik dan meteen een profielpagina en een lijst van hun artikels. Uitstekende tip, heel erg bedankt.

(Jammer dat Profiles en User settings blijven staan in het menu en op de User Management-pagina. Ik zou dat graag nog weg krijgen, eigenlijk.)

*
*    *

Dan dus nu kijken hoe ik de bestaande WordPress-auteurs (die in een custom field zitten) eerst in Drupal kan krijgen als min of meer dummy users, en dan hoe ik ze in een CCK-veld kan krijgen dat gekoppeld is aan het juiste artikel. Oh, en hoe ik de auteurs zoals ze er nu in zitten kan migreren naar “CCK-auteurs”.

…en ‘t is allemaal gemakkelijker dan ik dacht: “bestaande WordPress-auteurs in Drupal krijgen”, dat is niet meer nodig. Ze zitten er namelijk al in na de import. Hoezee!

En ze koppelen, dat is gewoon een zaak van in content_field_author de juiste uid van de auteur te steken. Ha! Ha!

Doe mee met de conversatie

1 reactie

  1. dat ziet er toch allemaal eenvoudig uit
    als het niet gaat moogt ge altijd bij mij komen
    ik drupal al heel mijn leven
    van het werkwoord drupalen
    ik drupaal enz
    wij drupalen
    kijk in het indische woordenboek
    en daar zie je de simmele uitleg
    veel liefs inge

Laat een reactie achter

Zeg uw gedacht

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.