Blog

WooCommerce Produkt Tabs erzeugen

Ihr möchtet eigene Tabs auf der Produktseite erstellen. WooCommerce selbst bietet euch dafür folgende Lösung an:

add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
function woo_new_product_tab( $tabs ) {
	
	// Adds the new tab
	$tabs['test_tab'] = array(
		'title' 	=> __( 'New Product Tab', 'woocommerce' ),
		'priority' 	=> 50,
		'callback' 	=> 'woo_new_product_tab_content'
	);

	return $tabs;
}
function woo_new_product_tab_content() {
	// The new tab content
	echo 'New Product Tab';
	echo 'Your new product tab.';
}

Enfügen, Textpassagen anpassen und die Sache läuft. Das Beispiel funktioniert prima, wenn ihr euch einen zusätzlichen auf eurer Produktseite wünscht. Was ist aber nun, wenn ihr sagen wir 15 Tabs haben möchtet? WooCommerce Produkt Tabs erzeugen weiterlesen

wp-config.php – kleine Datei mit großer Wirkung

Die wp-config.php Datei findest du im obersten Verzeichnis deiner WordPress-Installation. Im Regelfall warst du bereits dort als du die Verbindung zu deiner Datenbank angepasst und die URL deiner Seite festgelegt hast.

Mit dieser Datei lassen sich abseits der gängigen Einstellungen allerdings deutlich mehr Optionen freischalten. Einige der Funktionen möchte ich dir in diesem Artikel präsentieren. wp-config.php – kleine Datei mit großer Wirkung weiterlesen

Eigene Mails mit „WooCommerce Look“

Vielleicht standet ihr bereits vor dem Problem: Der Kunde fragt: Wir haben hier eine bestimmte Aktion, dort möchten wir eine E-Mail an alle Kunden verschicken. Der Entwickler denkt „Kein Problem, wp_mail und die Sache ist erledigt.“.

Dann kommt die Realität. Natürlich möchte der Kunde kleine Plain-Mail an seine Kunden versenden. Die Mail sollte natürlich so aussehen, wie eben auch die anderen E-Mails an den Kunden aussehen. Eigene Mails mit „WooCommerce Look“ weiterlesen

Snippet: Varianten mit „Ab“-Preis darstellen

Dieses Snippet wandelt die Anzeige von Varianten-Preisen in „ab XX“ statt der üblichen Preis-Spanne um:

	function variation_price_format( $price, $product ) {
		// Main Price
		$prices = array( $product->get_variation_price( 'min', true ), $product->get_variation_price( 'max', true ) );
		$price  = $prices[0] !== $prices[1] ? sprintf( __( 'ab: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

		// Sale Price
		$prices = array(
			$product->get_variation_regular_price( 'min', true ),
			$product->get_variation_regular_price( 'max', true )
		);
		sort( $prices );
		$saleprice = $prices[0] !== $prices[1] ? sprintf( __( 'ab: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

		if ( $price !== $saleprice ) {
			$price = '<del>' . $saleprice . '</del> <ins>' . $price . '</ins>';
		}

		return $price;
	}

Snippet: Limitierung von Suchergebnissen

Mit diesem kurzen Snippet könnt ihr die Anzahl der Suchergebnisse die auf der search.php ausgespielt werden beeinflussen:

add_filter('pre_get_posts', 'limit_posts_per_search_page');
function limit_posts_per_search_page() {
if ( is_search() )
set_query_var('posts_per_archive_page', 20);
}

Snippet: Adminbar im Frontend entfernen

Mit diesem Snippet könnt ihr die Administrations-Bar oben ausblenden, wenn ihr euch im Frontend eurer Website befindet. Das kann z.B. sinnvoll sein, wenn man seinen Kunden einen Administrator-Account zur Verfügung stellt und die Möglichkeiten (etwa zum Löschen des Caches) limitieren möchte.


add_filter( 'show_admin_bar', '__return_false' );

Snippet: Umleitung nach Registrierung

Wenn sich ein Nutzer auf eurer Seite registriert wird dieser normalerweile einfach auf eure wp-login.php umgeleitet. Manchmal möchte man den neuen User nicht direkt den Ort des Administrationsbereich hinweisen, oder ihn in ein eigenes Backend o.Ä. weiterleiten. Dafür braucht ihr keine umfangreiche Membership-Lösung sondern nur dieses Snippet:


add_filter( 'registration_redirect', 'wps_registration_redirect' );
function wps_registration_redirect() {
return home_url( '/finished/' );
}

Snippet: Mindestlänge für Kommentare

Hiermit gewährleistet ihr eine minimale Kommentar-Länge in euren Beiträgen. Das macht z.B. Sinn wenn eurer Blog von regen Diskussionen lebt und Einzeiler-Antworten erfahrungsgemäß weniger zur produktiven Diskussionsförderung beitragen.


add_filter( 'preprocess_comment', 'minimal_comment_length' );
function minimal_comment_length( $commentdata ) {
$minimalCommentLength = 20;
if ( strlen( trim( $commentdata['comment_content'] ) ) < $minimalCommentLength ){
wp_die( 'All comments must be at least ' . $minimalCommentLength . ' characters long.' );
}
return $commentdata;
}

Snippet: Die Anzahl an Kommmentaren im Beitrag zeigen

Mit diesem Snippet könnt ihr die Anzahl an Kommentaren zum aktuellen Beitrag ausgeben lassen. Bei entsprechender Anpassung der ID lässt sich diese Snippet natürlich auch auf der Startseite oder Kategorieübersichten problemlos einsetzen.


$commcount = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '1'");

if (0 < $commcount) $commcount = number_format($commcount);
echo "Our users have made ".$commcount." comments, care to join in?";

Snippet: Die beliebtesten Beiträgen anzeigen

Hiermit erstellt ihr eine Liste von Links zu euren beliebtesten Beiträgen. „Beliebtest“ heißt in diesem Fall, die Beiträge mit den meisten vorhandenen Kommentaren.


$args=array(
'cat' => 3,
'orderby' => 'comment_count',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 6,
'caller_get_posts'=> 1
);
$my_query = null;
$my_query = new WP_Query($args);

if( $my_query->have_posts() ) { ?>
<ul>
<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
<?php }

wp_reset_query();

Snippet: Individueller Inhalt unter jedem Beitrag

Mit diesem Snippet platziert ihr euren gewünschten Inhalt unter jeden Beitrag eures Blogs. Das kann so ziemlich alles sein. Eine Umfrage, ein Newsletter-Signup, Links zu euren E-Books oder sonstigen Aktionen und Inhalten.


function add_post_content($content) {

if(!is_feed() &amp;&amp; !is_home()) {
$content .= '<p>This article is copyright &copy; '.date('Y').'&nbsp;'.bloginfo('name').'</p>';
}

return $content;
}
add_filter('the_content', 'add_post_content');

Snippet: Minimale Länge von Beiträgen

Minimale Länge von Beiträgen. Ihr arbeitet mit Gastautoren oder habt meherere Mitarbeiter di in eurem Corporate-Blog Beiträge schreiben und veröffentlichen? Eine SEO-Schulung ist schnell vergessen oder wurde nie durchgeführt. Mit diesem Snippet legt ihr eine Mindestlänge für Beiträge fest:


function minWord($content){

global $post;
$num = 100; //set this to the minimum number of words
$content = $post->post_content;

if (str_word_count($content) < $num) wp_die( __('Error: your post is below the minimum word count.') ); } add_action('publish_post', 'minWord');

Übrigens ganz ähnlich könnt ihr verfahren, wenn ihr den Beitragstitel beeinflussen möchtet. Im unteren Beispiel habe ich eine maximale Länge von 10 Wörtern für den Titel festgelegt:

function maxWord($title){ 
 
global $post;
$title = $post->post_title; 
 
if (str_word_count($title) >= 10 ) //set this to the maximum number of words
wp_die( __('Error: your post title is over the maximum word count.') ); 
} 
add_action('publish_post', 'maxWord'); 

Snippet: Ein eigenes Dashboard-Widget

Mit diesem Snippet erstellt ihr ein eigenes Dashboard-Widget für eure WordPress-Seite. Im Beispiel haben wir einige Kontaktinformationen und einen Link hinterlegt:


add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
function my_custom_dashboard_widgets() {

global $wp_meta_boxes;
wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}
function custom_dashboard_help() {
echo '<p>Welcome to Custom Blog Theme! Need help? Contact the developer <a href="mailto:yourusername@gmail.com">here</a>. For WordPress Tutorials visit: <a href="http://patrickposner.de" target="_blank">This Page!</a></p>';
}

Snippet: Ein Favicon einbinden

Mit diesem Snippet fügt ihr euer eigenes Favicon ohne zu Hilfenahme eines Plugins hinzu:


function blog_favicon() {
echo '<link rel="Shortcut Icon" type="image/x-icon" href="'.get_bloginfo('wpurl').'/favicon.ico" />';
}
add_action('wp_head', 'blog_favicon');

5 jQuery Plugins für WooCommerce

jQuery ist ein Framework für Javascript. Es soll den Entwicklern die Arbeit erleichtern und stellt dafür eine vereinfachte Syntax bereit. In den letzten Jahren hat sich jQuery schon zum Quasi-Standard für die cross-browser-kompatible Umsetzung von Effekten und Animationen im Web etabliert. Auch wenn durch den steigenden Browser-Support von CSS3 mittlerweile vieles auch ohne JavaScript erledigt werden kann, bin ich froh jQuery als Teil meiner Werkzeugkiste zu wissen. 5 jQuery Plugins für WooCommerce weiterlesen