Seite 1 von 1

Gäste können nur eine bestimmte Anzahl an Beiträgen lesen?

Verfasst: 27.06.2012 18:08
von Mathias Z
Hallo Leute!

Ich suche eine MOD die es mir ermöglicht das Gäste, bzw. unangemeldete User, nur eine Bestimmte Anzahl von Beiträgen lesen können. Sie sollen sich für ein weiter lesen registrieren oder Anmelden.

Die Mod sollte es ermöglichen das z.B nur die ersten fünf Beiträge angezeigt werden. Außerdem sollte ein Hinweis unter dem fünften Beitrag stehen das man sich für das Weiterlesen anmelden müsse.

Ich habe nur ein Mod gefunden, der das unterstützt (Klick Mich). Leider gibt es da keinen Support mehr für und es scheint wohl Probleme zu geben mit PhPbb3 Version 3.0.9.
Kennt jemand noch eine weitere Modifikation oder Möglichkeit um das zu bewerkstelligen?

Ich danke euch!

LG, Mathias

Re: Gäste können nur eine bestimmte Anzahl an Beiträgen lese

Verfasst: 28.06.2012 18:40
von Miriam
Idee eines Ansatzes:

Finde in der viewtopic.php tausche aus gegen:
  • Code: Alles auswählen

    $counter = 5;
    while ($row = $db->sql_fetchrow($result) AND $counter)
    {
        if (!$user->data['is_registered'])
        {
            $counter--;
        } 
finde:
  • Code: Alles auswählen

    // Output the posts
    $first_unread = $post_unread = false;
    for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i)
    { 
tausche aus gegen:
  • Code: Alles auswählen

    $counter = 5;
    // Output the posts
    $first_unread = $post_unread = false;
    for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i)
    {
        if (!$user->data['is_registered'])
        {
            $counter--;
        } 
finde:
  • Code: Alles auswählen

            'MESSAGE'            => $message, 
tausche aus gegen:
  • Code: Alles auswählen

            'MESSAGE'            => ($counter > 0) ? $message : 'Bitte <a href="ucp.php?mode=register">reggen</a>.', 
Es werden maximal 5 Posts angezeigt der fünfte Post enthält den Hinweis. Bei weniger als 5 Posts wird kein Hinweis für Gäste angezeigt.

Re: Gäste können nur eine bestimmte Anzahl an Beiträgen lese

Verfasst: 29.06.2012 14:34
von vallehru
Wie wäre es hier mit? Muß dann eventl noch ein wenig an deine Bedürfnisse angepaßt werden, da nur das Startposting eines Threads angezeigt wird und dann eine Aufforderung kommt sich anzumelden bzw zu registrieren. Ansonsten schau mal in mein Forum als Gast, dann siehst du auch wie er funktioniert.

Re: Gäste können nur eine bestimmte Anzahl an Beiträgen lese

Verfasst: 09.07.2012 03:24
von Knowhow-Sauger
Was soll das bringen? Man muss sich dort nur erneut mit dem Internet verbinden, schon hat man eine neue IP-Adresse und kann die weiteren 5 Posts lesen, ohne sich anmelden zu müssen.
Außerdem habe ich in meinem Forum festgestellt, dass sich viele zwar registrieren, aber keinen einzigen Beitrag schreiben.
Ein Registrierungs-Zwang zum weiterlesen, bedeutet also keineswegs, dass deswegen auch mehr geschrieben wird.
Da würde ich lieber Gästen das Schreiben erlauben. So habe ich es. Und manchmal melden sich auch Gäste zu Wort. :)

Re: Gäste können nur eine bestimmte Anzahl an Beiträgen lese

Verfasst: 29.07.2013 17:49
von SarahUV
Moin zusammen,

ich weiß, ich grabe hier einen alten Stiefel aus, aber ich bin darüber gestolpert und habs mal ausprobiert.
Miriam hat geschrieben:...

Finde in der viewtopic.php tausche aus gegen:
  • Code: Alles auswählen

    $counter = 5;
    while ($row = $db->sql_fetchrow($result) AND $counter)
    {
        if (!$user->data['is_registered'])
        {
            $counter--;
        }
...
Dieser zu findende Code ist in der viewtopic.php mehrfach vorhanden, ich hatte mal einfach mal die erste "Fundstelle" genommen, aber da kam einfach nur Müll dabei raus. Wäre es möglich dieses Snippet zu konkretisieren?

Vielen Dank im voraus :)


lg

-S

Re: Gäste können nur eine bestimmte Anzahl an Beiträgen lese

Verfasst: 29.07.2013 18:59
von Miriam
Du hättest nur an zwei Stellen suchen / probieren müssen(Hint: Im zu suchenden Code war vor dem WHILE kein Tab.)
Finde also in der viewtopic:

Code: Alles auswählen

// Posts are stored in the $rowset array while $attach_list, $user_cache
// and the global bbcode_bitfield are built
while ($row = $db->sql_fetchrow($result))
{
    // Set max_post_time 
Der Rest wie beschrieben.