KATEGORIA:

05 – Własny motyw WordPress

własny motyw wordpress

Przed nami ostatni krok do cieszenia się podstawową wersją własnego szablonu WordPress. Należy przygotować pliki archive.php, search.php i 404.php. Nie będę ich omawiać szczegółowo tak jak w artykule pierwszym i drugim – lecz zaprezentuje gotowe przykłady.

ARCHIVE.PHP

W tym pliku definiujemy sposób wyświetlania archiwum wpisów. Możemy je sortować dowolnie, wg. autora, daty, roku, kategorii itd. Wygląd ustawiamy domyślnie jak na stronie z wpisami (możemy go oczywiście zmodyfikować).

SCHEMAT PLIKU ARCHIVE.PHP

Jest to przykładowy kod, użyty w motywie twentyfifteen.

<?php
/**
 * The template for displaying archive pages
 *
 * Used to display archive-type pages if nothing more specific matches a query.
 * For example, puts together date-based pages if no date.php file exists.
 *
 * If you'd like to further customize these archive views, you may create a
 * new template file for each one. For example, tag.php (Tag archives),
 * category.php (Category archives), author.php (Author archives), etc.
 *
 * @link https://codex.wordpress.org/Template_Hierarchy
 *
 * @package WordPress
 * @subpackage Twenty_Fifteen
 * @since Twenty Fifteen 1.0
 */

get_header(); ?>

	<section id="primary" class="content-area">
		<main id="main" class="site-main" role="main">

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

			<header class="page-header">
				<?php
					the_archive_title( '<h1 class="page-title">', '</h1>' );
					the_archive_description( '<div class="taxonomy-description">', '</div>' );
				?>
			</header><!-- .page-header -->

			<?php
			// Start the Loop.
			while ( have_posts() ) : the_post();

				/*
				 * Include the Post-Format-specific template for the content.
				 * If you want to override this in a child theme, then include a file
				 * called content-___.php (where ___ is the Post Format name) and that will be used instead.
				 */
				get_template_part( 'content', get_post_format() );

			// End the loop.
			endwhile;

			// Previous/next page navigation.
			the_posts_pagination( array(
				'prev_text'          => __( 'Previous page', 'twentyfifteen' ),
				'next_text'          => __( 'Next page', 'twentyfifteen' ),
				'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page', 'twentyfifteen' ) . ' </span>',
			) );

		// If no content, include the "No posts found" template.
		else :
			get_template_part( 'content', 'none' );

		endif;
		?>

		</main><!-- .site-main -->
	</section><!-- .content-area -->

<?php get_footer(); ?>

Do kodu możemy dodać dowolne elementy wpisu – datę (the_time(‚d:m:Y’);) itp.

SEARCH.PHP

Tutaj zdefiniujemy co użytkownik zobaczy po wpisaniu dowolnego słowa do wyszukiwarki. Poniżej jest przykładowy kod, użyty w motywie twentyfifteen.

<?php
/**
 * The template for displaying search results pages.
 *
 * @package WordPress
 * @subpackage Twenty_Fifteen
 * @since Twenty Fifteen 1.0
 */

get_header(); ?>

	<section id="primary" class="content-area">
		<main id="main" class="site-main" role="main">

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

			<header class="page-header">
				<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentyfifteen' ), get_search_query() ); ?></h1>
			</header><!-- .page-header -->

			<?php
			// Start the loop.
			while ( have_posts() ) : the_post(); ?>

				<?php
				/*
				 * Run the loop for the search to output the results.
				 * If you want to overload this in a child theme then include a file
				 * called content-search.php and that will be used instead.
				 */
				get_template_part( 'content', 'search' );

			// End the loop.
			endwhile;

			// Previous/next page navigation.
			the_posts_pagination( array(
				'prev_text'          => __( 'Previous page', 'twentyfifteen' ),
				'next_text'          => __( 'Next page', 'twentyfifteen' ),
				'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page', 'twentyfifteen' ) . ' </span>',
			) );

		// If no content, include the "No posts found" template.
		else :
			get_template_part( 'content', 'none' );

		endif;
		?>

		</main><!-- .site-main -->
	</section><!-- .content-area -->

<?php get_footer(); ?>

404.PHP

Ostatni plik, to strona 404 – wyświetla się kiedy dana strona nie istnieje – została usunięta, albo plik został przeniesiony w inne miejsce. Tutaj możemy już dać ponieść się fantazji – nie ma żadnych szablonów. Ważne, żeby strona była ciekawa i zawierała link do strony głównej. Ponadto, należy poinformować gościa, dlaczego wyświetla się taka „dziwna” strona. Przykłady ciekawych i śmiesznych stron 404, znajdują się w artykule TUTAJ.

GOTOWY MOTYW WORDPRESS

Wszystkie niezbędne pliki, do stworzenia własnego szablonu są gotowe. Jest to absolutna podstawa do dobrego motywu i podstawa, która działa. Blog będzie wyświetlał się poprawnie.

Jest to jednak zaledwie ułamek możliwości WordPressa. Wymyślono całe mnóstwo funkcji, które mogą wiele zmienić. Wszystkie one są dostępne, opisane i opatrzone przykładami na stronie: DEVELOPER WORDPRESS.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *