Weiterlsen nur für Mitglieder

  • Hi,

    ich bin auf der suche nach einer einstellung das meine Artikel mit der Weiterlesen Funktion nur von Eingeloggten Mitgliesern gelesen werdenn können.

    Also wenn jemand auf weiterlesen klickt dann soll ein Text erscheinen, z.B.

    Bitte registriere dich Kostenloas um den Beitrag vollständig lesen zu können.

    Gibt es eine Möglichkeit das einzustellen? Ich habe leider noch nix dazu gefunden.

    Beste Grüße

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Es kann abgefragt werden, ob ein Besucher eingeloggt ist oder nicht:
    http://codex.wordpress.org/Function_Refer…_user_logged_in

    Damit kannst du im Loop mit einer if-Abfrage steuern, was angezeigt werden soll. Entweder the_content() oder the_excerpt()

    Für den nicht eingeloggten User würde ich dann the_excerpt ohne den Link zum Artikel in the_title() anzeigen. Stattdessen kann dort ein Link zur Seite mit dem gewünschten Hinweis gesetzt werden.

  • super danke für die antwort! nur leider kann ich danmit nicht viel anfangen da ich der absulute newbi bin :) gibt es nicht einen code schnipsel den ich irrgenwo einfügen kann ^^

    beste grüße

  • Das hängt vom verwendeten Theme ab, ich kann also nur allgem. Hinweise geben.

    Der rotmarkierte Code steht ev. bei dir in der index.php

    PHP
    <?php
    if ( is_user_logged_in() ) { ?>
    [COLOR=Red]    <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h2>
        <?php the_content('<strong>weiterlesen...</strong>');[/COLOR]
    } else { ?>
        <h2><?php the_title(); ?></h2>
        <?php the_excerpt(); ?>
        <a href="http://deineURL.de/">Bitte anmelden um weiterzulesen</a>
    <?php };
    ?>
  • Das ist ein teil meiner index.php, ist das das richtige?

    hier mal die webseite: http://www.mein-biss.de

    mfg

    ?php do_action( 'bp_before_blog_home' ) ?>

    <div <?php post_class(); ?> id="blog-latest">

    <?php if ( have_posts() ) : ?>

    <?php while (have_posts()) : the_post(); ?>

    <?php do_action( 'bp_before_blog_post' ) ?>

    <div <?php post_class(); ?> id="post-<?php the_ID(); ?>">

    <div class="author-box">
    <?php echo get_avatar( get_the_author_meta( 'user_email' ), '50' ); ?>
    <?php if(defined('BP_VERSION')){ ?>
    <p><?php printf( __( 'by %s', 'buddypress' ), bp_core_get_userlink( $post->post_author ) ) ?></p>
    <?php } ?>
    </div>

    <div class="post-content">
    <h2 class="posttitle"><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php _e( 'Permanent Link to', 'buddypress' ) ?> <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>

    <p class="date"><?php the_time('F j, Y') ?> <em><?php _e( 'in', 'buddypress' ) ?> <?php the_category(', ') ?><?php if(defined('BP_VERSION')){ printf( __( 'by %s', 'buddypress' ), bp_core_get_userlink( $post->post_author ) );}?></em></p>

    <div class="entry">
    <?php the_content( __( 'Read the rest of this entry &rarr;', 'buddypress' ) ); ?>
    </div>
    <?php $tags = get_the_tags(); if($tags) { ?>
    <p class="postmetadata"><span class="tags"><?php the_tags( __( 'Tags: ', 'buddypress' ), ', ', '<br />'); ?></span> <span class="comments"><?php comments_popup_link( __( 'No Comments »', 'buddypress' ), __( '1 Comment »', 'buddypress' ), __( '% Comments »', 'buddypress' ) ); ?></span></p>
    <?php } else {?>
    <p class="postmetadata"><span class="comments"><?php comments_popup_link( __( 'No Comments »', 'buddypress' ), __( '1 Comment »', 'buddypress' ), __( '% Comments »', 'buddypress' ) ); ?></span></p>
    <?php } ?>
    </div>

    </div>

  • Erstelle eine Kopie deiner index.php unter dem Namen xxx_index.php und
    Ändere diesen Code in der index.php:

    in den folgenden:



    Sollte so funktionieren, wenn nicht kannst du die index.php wieder löschen und die xxx_index.php wieder umbenennen.

  • hey super funktioniert... ist nicht ganz das was ich haben wollte aber läuft !!!! besten dank!

    nur leider kann man wenn man die artikelkategorien durchsucht immernoch alles lesen :) die scheinen nur auf der startseite gespert zu sein richt?

    beste grüße

  • Leuchtet mir zwar nicht ganz ein, warum du das so machen willst. Eigentlich will man ja im Internet was veröffentlichen und nicht verstecken. Es ist nicht sonderlich reizend, wenn Besucher erstmal pers. Daten angeben müssen um Inhalte zu lesen.

    Wird wohl bei dem Theme eine andere Templatedatei für die category-Anzeige verwendet. Da musst du mal schauen und die gleiche Änderung machen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!