ccc

Plugin para añadir código o scripts personalizados a las páginas en el header o en el footer

https://wordpress.org/plugins/header-and-footer-scripts/

Y ya en cada entrada al editarla te sale un textarea para añadir los scripts que quieras meter en el header o en el footer.

Si queremos poner un código en el header o en el footer de todas las páginas (por ejemplo el de analytics o el de tag manager) entonces ir a Ajustes -> Header and footer scripts

Contact Form: añadir la IP del visitante que rellena el formulario

Desde el Admin en los ajustes de los formularios ir al formulario donde se quiera poner y en la pestaña de Mail en el cuerpo del mensaje poner:

[_remote_ip]

Saber qué fichero php se está ejecutando en cada momento

Como cada theme es de su padre y de su madre ninguno tienen la misma estructura de archivos por lo que nos cuesta muchísimo el poder localizar qué fichero php hay que modificar en cada tema. Menos mal que existe un plugin maravilloso:

https://wordpress.org/plugins/what-the-file/

Que lo instalas y lo activas, y luego en el front según te vas moviendo por las pantallas en un iconito en la barra de herramientas te dice el fichero (o ficheros) que se está cargando en cada página.

Pero si no quieres instalar ningún plugin sería en el function.php del tema hijo activo poner:
add_action('wp_head', 'lsg_show_template_file_name');
function lsg_show_template_file_name() {
    global $template;
    echo "<!-- URLFICH: ".$template." -->";
}

Y ya solo en la página en la que estemos inspeccionamos la consola y buscamos URLFICH

Plugin para mostrar todos los posts en una página

https://es.wordpress.org/plugins/wp-show-posts/

También te permite en vez de los posts mostrar las pages o los products de Woocommerce

Si en vez de usar un plugin queremos hacerlo a pelo en el functions.php creando nuestro propio shortcode sería:
function lsg_listar_all_posts() {
  $html = "";
  $args = array("posts_per_page" => 10, "orderby" => "rand");
  $posts_array = get_posts($args);
  foreach($posts_array as $post)  {
    $html .= "<h3>" . $post->post_title . "</h3>";
    $html .= "<p>" . $post->post_content . "</p><br>";
  }
  return $html;
}
add_shortcode('listar_all_posts', 'lsg_listar_all_posts');

En $args se pueden pasar muchos más parámetros:
https://www.sitepoint.com/exploring-the-wordpress-get_posts-function/

Para mostrar las páginas sin plugin sería:
function lsg_listar_all_pages() {
  $html = "";
  $pages = get_pages();
  foreach ( $pages as $page ) {
    $html .= "<h3>".get_page_link( $page->ID )."</h3>";
    $html .= "<h4>".$page->post_title."</h4>";
  }
  return $html;
}
add_shortcode('listar_all_pages', 'lsg_listar_all_pages');
Más información en:
https://developer.wordpress.org/reference/functions/get_pages/

Añadir un shortcode a todos los posts o a todas las páginas

Por ejemplo añadir un shortcode del metaSlider.

En el functions.php (o con Code Snippets si quieres) del tema activo:
function add_shortcode_todos_los_posts( $content ) {
  global $post;
  if( ! $post instanceof WP_Post ) return $content;

  switch( $post->post_type ) {
    case 'post':
      return $content . '[metaslider id="127"]';
    case 'page':
      return $content . '[metaslider id="127"]';
    default:
      return $content;
  }
}

add_filter( 'the_content', 'add_shortcode_todos_los_posts' );

También lo puedes hacer creándote tu propio plugin el cual luego activas (te creas con el FTP la carpeta en plugins y dentro de dicha carpeta el fichero, por ejemplo: lsg-add-shortcode-all-posts.php y el código será:
<?php
/*
Plugin Name: LSG add shortcode all posts
Plugin URI: http://your-url.com
Description: Añade el shortcode del slider a todos tus posts y pages
Version: 0.1
Author: Leandro Sierra García
Author URI: http://www.leandrosierragarcia.com
*/
function add_shortcode_all_posts( $content ) {
  global $post;
  if( ! $post instanceof WP_Post ) return $content;

  switch( $post->post_type ) {
    case 'post':
      return $content . '[metaslider id="127"]';

    case 'page':
      return $content . '[metaslider id="127"]';

    default:
      return $content;
  }
}

add_filter( 'the_content', 'add_shortcode_all_posts' );
?>

Luego activas desde el Admin este nuevo plugin y ya está.


Plugin slider

https://es.wordpress.org/plugins/ml-slider/