Wordpress-Blog nur für bestimmte Benutzer sichtbar machen!

ben-pen

ben-pen

Aktives Mitglied
Thread Starter
Dabei seit
26.08.2005
Beiträge
1.500
Reaktionspunkte
9
Wie kann ich meinen Blog nur für bestimmte Benutzer, welche ich angelegt habe, sichtbar machen. Der Rest des www soll den Blog nicht anschauen dürfen.

Wie kann ich das einstellen?

Bei den Blogs, die man direkt auf Wordpress.de einrichtet geht das unter Einstellungen. Aber selbst gehosteten Blogs nicht.

Danke für Hilfe.
BP
 
Welche Wordpress-Version benutzt du?
 
2.5 die neuste
 
Indem du im Template abfragst, ob der User registriert ist.

EDIT: Duh! Damit kannst jetzt viel anfangen :)

Ich habe zwar noch keine ganze Site abgesperrt, aber einzelne Bereiche habe ich mit einem Template abgesperrt, indem ich vor dem if (have_posts()) ... Teil folgendes eingefügt habe:

Code:
<?php if (is_user_logged_in()) { ?>

Natürlich nachher dann mit
Code:
<?php } ?>
beenden.


EDIT: Für WP-Anfänger, so sieht eine index.php dann ungefähr aus, wenn Ihr diesen Code einfügt:
Code:
<?php get_header(); ?>

<?php get_sidebar(); ?>	

<?php if (is_user_logged_in()) { ?>
  <?php if (have_posts()) : ?>
    <?php while (have_posts()) : the_post(); ?>
	[...]
    <?php endwhile; ?>
    [...]
    <?php else : ?>
    [...]
  <?php endif; ?>
<?php } else { echo "Du darfst nicht rein!"; } ?>

<?php get_footer(); ?>
 
Zuletzt bearbeitet:
siehe mein edit.
Du warst zu schnell ;)

Du kannst dann auch, indem du ein
Code:
<?php } else { echo "ey, du kommst do net rein"; } ?>
einbaust, eine nette "verp*ss Dich" Nachricht einbauen :)

Kennst Du Dich generell mit Themes aus? Hast Du schon mal ein Theme erstellt, oder angepasst oder so?
(Sorry, ich habe oben "Template" geschrieben und meinte "Theme".)
 
Ja ich habe mein Theme um einiges verändert. Kenne mich da ein wenig aus. aber nicht so dass ich irgendetwas sperren könnte.

Ich werd das mal probieren. Sind das dann Benutzer die ich eingerichtet habe, oder alle WP Benutzer?
 
das sind dann alle User, die sich angemeldet haben.
Aber weil Du die Selbst-anmeldung ja (glaub ich) deaktivieren kannst, kannst Du so nur die Leute reinlassen, die du manuell eingegeben hast und das Ding so sicher machen.
 
siehe mein edit.
Du warst zu schnell ;)

Du kannst dann auch, indem du ein
Code:
<?php } else { echo "ey, du kommst do net rein"; } ?>
einbaust, eine nette "verp*ss Dich" Nachricht einbauen :)

Kennst Du Dich generell mit Themes aus? Hast Du schon mal ein Theme erstellt, oder angepasst oder so?
(Sorry, ich habe oben "Template" geschrieben und meinte "Theme".)

Wo muss der "else"-Teil denn hin. Könnte ich auch auf die Einloggen-Seite verlinken?
 
Zuletzt bearbeitet:
]Danke für deine Hilfe, aber so ganz bekomms ich nicht hin. Ohne der else funktion klapps. Mit nicht.

Hier mein Blanko-Code:

Code:
<?php get_header(); ?>


	<div id="content">

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

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

			<div class="post" id="post-<?php the_ID(); ?>">
<p class="entry"><?php the_time('j. F Y') ?></p>
				<h2 class="title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>

				<div class="entry">
					<?php the_content('Read the rest of this entry &raquo;'); ?>
				</div>

				<p class="meta">Geschrieben von: <?php the_author() ?>, am <?php the_time('j. F Y') ?> &nbsp;|&nbsp; <?php edit_post_link('EDIT', '', ' &nbsp;|&nbsp; '); ?>  <?php comments_popup_link('Noch keine Kommentare »', '1 Kommentar »', '% Kommentare »'); ?></p>
			</div>

		<?php endwhile; ?>

		<div class="navigation">
			<div class="alignleft"><?php next_posts_link('&laquo; Older Entries') ?></div>
			<div class="alignright"><?php previous_posts_link('Newer Entries &raquo;') ?></div>
		</div>

	<?php else : ?>

		<h2 class="center">Not Found</h2>
		<p class="center">Sorry, but you are looking for something that isn't here.</p>
		<?php include (TEMPLATEPATH . "/searchform.php"); ?>

	<?php endif; ?>

	</div>
<?php get_sidebar(); ?>

<?php get_footer(); ?>

<?php } ?>
 
Wo muss der "else"-Teil denn hin. Könnte ich auch auf die Einloggen-Seite verlinken?
Ziemlich weit am Ende.

Du erkennst, dass der WordPress Loop zuende ist, am endwhile.
danach kommt oft ein "navigation" Dingens, das zu den vorigen/nächsten Beiträgen linkt. Dann kommt ein else, wo meist drinsteht, dass irgendwas nicht gefunden wurde. Danach kommt ein endif, das das if have_posts() beendet.

Und danach machst Du das else rein, wo dann der Link zum Anmeldeformular steht.

In der Seite, in der ich das einsetze, habe ich bei nicht-eingeloggten Leuten ein Login-formular eingebaut. Darunter ein Mail-formular, zum beantragen eines Logins. (Ist für Presseseiten).
Keine Ahnung mehr, wo ich das herhabe (die Parameterdefinition für eigene Formulare). Aber es sieht folgendermassen aus:
Code:
<form class="ddfm" name='loginform' id='loginform' action='/wp-login.php' method='post'>
  <p class="fieldwrap"><label for="log">Username</label><input class="fmtext" type="text" name="log" id="log" value="" tabindex='1' /></p>
  <p class="fieldwrap"><label for="pwd">Passwort</label><input class="fmtext" type='password' name='pwd' id='pwd' value='' tabindex='2' /></p>
  <input name='rememberme' type='hidden' id='rememberme' value='false' />
  <div class="submit">
    <input type='submit' name='submit' id='submit' value='<?php echo $t_login; ?> &raquo;' tabindex='3' />
    <?php //use a hidden field to return them to the page they came from ?>
    <input type="hidden" name="redirect_to" value="<?php echo $_SERVER["REQUEST_URI"]; ?>" />
  </div>
</form>
 
]Danke für deine Hilfe, aber so ganz bekomms ich nicht hin. Ohne der else funktion klapps. Mit nicht.
Probier mal:

Code:
<?php get_header(); ?>

	<div id="content">
[B]<?php if (is_user_logged_in()) { ?>
[/B]	<?php if (have_posts()) : ?>

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

			<div class="post" id="post-<?php the_ID(); ?>">
				<p class="entry"><?php the_time('j. F Y') ?></p>
				<h2 class="title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>

				<div class="entry">
					<?php the_content('Read the rest of this entry &raquo;'); ?>
				</div>

				<p class="meta">Geschrieben von: <?php the_author() ?>, am <?php the_time('j. F Y') ?> &nbsp;|&nbsp; <?php edit_post_link('EDIT', '', ' &nbsp;|&nbsp; '); ?>  <?php comments_popup_link('Noch keine Kommentare »', '1 Kommentar »', '% Kommentare »'); ?></p>
			</div>

		<?php endwhile; ?>

		<div class="navigation">
			<div class="alignleft"><?php next_posts_link('&laquo; Older Entries') ?></div>
			<div class="alignright"><?php previous_posts_link('Newer Entries &raquo;') ?></div>
		</div>

	<?php else : ?>

		<h2 class="center">Not Found</h2>
		<p class="center">Sorry, but you are looking for something that isn't here.</p>
		<?php include (TEMPLATEPATH . "/searchform.php"); ?>

	<?php endif; ?>
[B]<?php } else { echo "Du darfst nicht rein!"; } ?>
[/B]	</div>
<?php get_sidebar(); ?>

<?php get_footer(); ?>
 
Probier mal:

Code:
<?php get_header(); ?>

	<div id="content">
[B]<?php if (is_user_logged_in()) { ?>
[/B]	<?php if (have_posts()) : ?>

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

			<div class="post" id="post-<?php the_ID(); ?>">
				<p class="entry"><?php the_time('j. F Y') ?></p>
				<h2 class="title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>

				<div class="entry">
					<?php the_content('Read the rest of this entry &raquo;'); ?>
				</div>

				<p class="meta">Geschrieben von: <?php the_author() ?>, am <?php the_time('j. F Y') ?> &nbsp;|&nbsp; <?php edit_post_link('EDIT', '', ' &nbsp;|&nbsp; '); ?>  <?php comments_popup_link('Noch keine Kommentare »', '1 Kommentar »', '% Kommentare »'); ?></p>
			</div>

		<?php endwhile; ?>

		<div class="navigation">
			<div class="alignleft"><?php next_posts_link('&laquo; Older Entries') ?></div>
			<div class="alignright"><?php previous_posts_link('Newer Entries &raquo;') ?></div>
		</div>

	<?php else : ?>

		<h2 class="center">Not Found</h2>
		<p class="center">Sorry, but you are looking for something that isn't here.</p>
		<?php include (TEMPLATEPATH . "/searchform.php"); ?>

	<?php endif; ?>
[B]<?php } else { echo "Du darfst nicht rein!"; } ?>
[/B]	</div>
<?php get_sidebar(); ?>

<?php get_footer(); ?>


Dankeschön
 
Also. Mit dem PlugIn "MembersOnly" klappts am einfachsten.
 
Zurück
Oben Unten