Programmierung

Als Hobby betreibe ich ja ein wenig Web-Development, also programmieren für und von Internetseiten. Oft entstehen Lösungen ich finde Code-Snippets die nützlich sind. Diese dokumentiere ich für mich und teile sie mit euch. Die meisten Sachen hier werden HTML, Javascript, CSS, PHP & Wordpress Sachen sein – Das ist halt das Skill-Level wo ich mich bewege.

 function filter_plugin_deactivate_updates( $value ) {
    unset( $value->response['meta-box/meta-box.php'] );
    unset( $value->response['meta-box-group/meta-box-group.php'] );

    return $value;
}
add_filter( 'site_transient_update_plugins', 'filter_plugin_deactivate_updates' );

Updates von spezifischen Plugins in WordPress unterbinden

/*
 *  GIBT POSTS ALS ARRAY ZURÜCK
 * 
 *  $loop_args -> Ein Array mit den standard Argmuenten von Wordpress
 * 
 *  return -> Ein Array mit den Posts
 */

function get_posts_as_array( $loop_args = array() ) {
	// Ausgabe Array
	$posts_output = array();	
	
	
	// LOOP ARGUMENTS	
	$defaults = array( 
		'category_name'  => 'Allgemein'
		'posts_per_page' => 50, 
	);
	$post_loop_args = wp_parse_args( $loop_args, $defaults );
	
	
	// EVENT LOOP
	$post_loop = new WP_Query( $post_loop_args );
	while ( $post_loop->have_posts() ) : $post_loop->the_post();
		$single_post_id = get_the_id();
		$single_post    = array( // Event Daten
			'id'       => $single_post_id,
			'title'    => get_the_title( $single_post_id ),
			'content'  => get_the_content( $single_post_id ),
			'thumb_id' => get_post_thumbnail_id( $single_post_id ),
			'date'     => get_the_date( 'd. m. Y', $single_post_id ),
			'meta'     => array(
				// Sub-Array zum Post sind auch möglich um z.b.
				// eigene Optionen aus 'Custom Fields' oder Metaboxen speichern
				// 'EIGENE_OPTIONEN' => get_custom_field(),
			),
		);
		
		// aktuellen Post an Array anfügen
		array_push( $posts_output, $single_post );
		
	endwhile;
	
	// POST-ARRAY MANIPULATION
	// hier könnte noch Code eingefügt werden um das Array
	// Nachträglich zu verändertn, z.B. anders sortieren
	// asort( $posts_output );
	
	
	// RETURN
	return $posts_output;
};

WordPress Posts als Array speichern

// Fügt HTML Code in den Footer ein
function add_tracking_to_footer() {
	// Template	
	$output = "\n\n 
	<!-- TRACKING -->
	<script type=\"text/javascript\">
		// Tracking Code hier rein kopieren
		doTracking();
	</script>	
	<!-- End of Tracking -->
	\n\n ";
		
	echo $output;
};
add_action( 'wp_footer', 'add_tracking_to_footer' );

Tracking, Script oder HTML in Footer einbauen

/*
 * S T Y L E S 
 */

function lh_theme_styles() {
	
	$theme_object = wp_get_theme();
	$version      = $theme_object["Version"];
	
	wp_enqueue_style( 'main_css', get_template_directory_uri() . '/style.css',  array(), $version );	
}
add_action( 'wp_enqueue_scripts', 'lh_theme_styles' );

style.css Version mit WordPress-Theme Version gleich schalten

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]


# END WordPress



# === COMPRESSION & OPTIMIZATION (begin) ===
# Enable GZIP

AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html


# Expires Headers - 2678400s = 31 days

  ExpiresActive On
  ExpiresDefault "access plus 1 seconds"
  ExpiresByType text/html "access plus 7200 seconds"
  ExpiresByType image/gif "access plus 2678400 seconds"
  ExpiresByType image/jpeg "access plus 2678400 seconds"
  ExpiresByType image/png "access plus 2678400 seconds"
  ExpiresByType text/css "access plus 518400 seconds"
  ExpiresByType text/javascript "access plus 2678400 seconds"
  ExpiresByType application/x-javascript "access plus 2678400 seconds"


# Cache Headers

  # Cache specified files for 31 days
  
  Header set Cache-Control "max-age=2678400, public"
  
  # Cache HTML files for a couple hours
  
  Header set Cache-Control "max-age=7200, private, must-revalidate"
  
  # Cache PDFs for a day
  
  Header set Cache-Control "max-age=86400, public"
  
  # Cache Javascripts for 31 days
  
  
 # === COMPRESSION & OPTIMIZATION (end) === 
  
  

GZIP, Caching & Header-Control über die .htaccess für WordPress aktivieren