Zur Navigation

Starseite abfrage

startseite abfrage index.php

1 emre0510

Guten Morgen.

Da ich absoluter php Neuling bin brauche ich jetzt Hilfe von einem Profi.

Mein Problem:
Ich muss im index.php eine abfrage erstellen und somit ermitteln OB ich mich auf der STARTSEITE befinde. Ansonsten soll ein HTML Block aufgebaut werden. Ich weiss das ich mit IF und ELSE arbeiten muss und das wars auch schon. Hab auch schon was gebastelt. Zurzeit sieht es so aus in meinem Code:

 /*Abfrage erstellen ob dies die Startseite ist
Falls ja, soll er an dieser Stelle nichts machen

ansonsten soll der folgende HTML Block aufgebaut werden */

<?php
if $AktuelleSeite == 'STARTSEITE' {
}
else {
?>	
	<div class="pagemid">
		<div class="inner">
				<div id="main">	
				<div class="entry-content">
					<?php get_template_part( 'loop' ); ?>
					</div>	
					<!-- .C O N T E N T -->
			
				</div>
				<!-- #M A I N -->
				<?php get_sidebar(); ?>
				<!-- #S I D E B A R -->
				<div class="clear"></div>
		</div>
		<!--  .M A I N C O N T E N T  E N D -->
	</div>	
}

/* Abfrage schliessen */ 

05.08.2013 09:11 | geändert: 05.08.2013 09:12

2 Jörg

Du kannst den Request-URI auswerten (den Teil der URL, welcher nach dem Domainnamen folgt):

<?php
if ($_SERVER['REQUEST_URI'] != '/' && $_SERVER['REQUEST_URI'] != '/index.php') {
?>

<!-- Inhalt, der nicht auf der Startseite angezeigt wird -->

<?php
}
?>

Auf http://example.com/ und http://example.com/index.php wird der betreffende Inhalt dann nicht angezeigt

Ein else benötigst du hier nicht, du kannst die Bedingungen ja mit != negieren

05.08.2013 09:20 | geändert: 05.08.2013 09:21

1 Forenmitglied fand diesen Beitrag gut

3 emre0510

Danke für die schnelle Antwort. Hab so eingebaut jedoch zeigt es nichts mehr an. Ich bekomme keine Fehlermeldung, die Seite wird einfach Blank aufgerufen. Unterseiten funktionieren.

05.08.2013 09:35 | geändert: 05.08.2013 09:53

4 Jörg

Wenn die Unterseiten funktionieren, ist wohl zumindest der PHP-Code nicht fehlerhaft eingebaut.

Was wird dir denn angezeigt, wenn du auf der Startseite die Quelltextansicht des Browsers aufrufst?

Es solte dort der HTML-Code zu sehen sein, der ober- und unterhalb des if Blocks steht:

<!-- Inhalt, der auf allen Seiten angezeigt wird -->

<?php
if ($_SERVER['REQUEST_URI'] != '/' && $_SERVER['REQUEST_URI'] != '/index.php') {
?>

<!-- Inhalt, der nicht auf der Startseite angezeigt wird -->

<?php
}
?>

<!-- Inhalt, der auf allen Seiten angezeigt wird -->

05.08.2013 10:40 | geändert: 05.08.2013 10:41

1 Forenmitglied fand diesen Beitrag gut

5 emre0510

Ich muss wohl irgendetwas falsch gemacht haben. Der Quelltextansicht zeigt nichts an. So siehts momentan im index.php aus:

<?php
if ($_SERVER['REQUEST_URI'] != '/' && $_SERVER['REQUEST_URI'] != '/index.php') {
?>
	
	<div class="pagemid">
		<div class="inner">
				<div id="main">	
				<div class="entry-content">
					<?php get_template_part( 'loop' ); ?>
					</div>	
					<!-- .C O N T E N T -->
			
				</div>
				<!-- #M A I N -->
				<?php get_sidebar(); ?>
				<!-- #S I D E B A R -->
				<div class="clear"></div>
		</div>
		<!--  .M A I N C O N T E N T  E N D -->
	</div>	


<?php
}
?>

05.08.2013 10:51

6 Jörg

Schalte mal das Error Reporting ein, damit auch wirklich alle PHP-Fehler ausgegeben werden:

<?php
error_reporting(-1);
ini_set('display_errors', '1');
if ($_SERVER['REQUEST_URI'] != '/' && $_SERVER['REQUEST_URI'] != '/index.php') {
?>

05.08.2013 11:00

1 Forenmitglied fand diesen Beitrag gut

7 emre0510

Erhalte keine Ausgabe. :S

05.08.2013 11:23

8 Jörg

Außerhalb des if Blocks gibt es aber noch HTML-Code? dass der Code in Beitrag 5 auf der Startseite dazu führt, dass nichts angezeigt wird, was sich innerhalb dieses if Blocks befindet, ist ja logisch, und auch so gewollt.

05.08.2013 11:29

9 emre0510

Tut mir leid das ich hier nicht mehr geantwortet habe. Die Lösung die ich mir da erarbeiten wollte machte überhaupt kein Sinn. Somit hat sich die Frage erledigt :)

Danke für den Support

07.08.2013 09:18

Beitrag schreiben (als Gast)





[BBCode-Hilfe]