WP-Query Add Pagination

Firstly you have your while loop to run through all your posts.
And above your while loop you have your args.

You need to add this arg

$args['paged'] = $paged;

Below is a template to start your while loop

  $args['post_type'] = 'post';

  $query = new WP_Query($args);

  while ( $query->have_posts() ) : the_post(); ?>
    <?php 
      $query->the_post(); 
      $post_id = get_the_ID();
    ?>
    <div class="card">
      <a href="<?php the_permalink(); ?>" class="card-header text-center">
        <?php
          the_title();
        ?>
      </a>
      <div class="card-body">
        <?php
          the_content();
        ?>  
      </div>
    </div>
<?php endwhile; ?>

Your Args must be before your Query!

Then after your endwhile. Paste this code to display your pagination links

<div class="pagination">
    <?php 
        echo paginate_links( array(
            'base'         => str_replace( 999999999, '%#%', esc_url( get_pagenum_link( 999999999 ) ) ),
            'total'        => $query->max_num_pages,
            'current'      => max( 1, get_query_var( 'paged' ) ),
            'format'       => '?paged=%#%',
            'show_all'     => false,
            'type'         => 'plain',
            'end_size'     => 2,
            'mid_size'     => 1,
            'prev_next'    => true,
            'prev_text'    => sprintf( '<i></i> %1$s', __( 'Previous', 'text-domain' ) ),
            'next_text'    => sprintf( '%1$s <i></i>', __( 'Next', 'text-domain' ) ),
            'add_args'     => false,
            'add_fragment' => '',
        ) );
    ?>
</div>

 

 

WordPress Login redirecting to strange url

Define('WP_SITEURL','https://your-site-url');
Define('WP_HOME','https://your-site-url');

The above code must get added to your wp-config.php File
It should fix the redirecting login issue.

I left in inside my file after using it and all seemed fine. So no harm in just keeping it.

PHP check if an item is inside a multi dimensional array

Here’s the Stackoverflow link

Here’s the improved answer

//The Function
    function in_array_r($needle, $haystack, $strict = false) {
        foreach ($haystack as $item) {
            if (($strict ? $item === $needle : $item == $needle) || (is_array($item) && in_array_r($needle, $item, $strict))) {
                return true;
                $found = 'yes';
            }
        }
        $found = 'no';
        return false;
    }

//The Function in use
        //Set the result as a var so you can check it.
  $found = in_array_r($search_pre_order_date,$dates_array) ? 'found' : 'not found';
  
        //If the result is equal to something do something...
        if ($found == 'found') {
    echo 'Yes this item is in the array';
  }elseif ($found == 'not found') {
                echo 'Nope not in the array';
  }

Change the featured image text on custom post type

add_action( 'admin_head', 'remove_my_meta_boxen' );
function remove_my_meta_boxen() {
    remove_meta_box( 'postimagediv', 'countries', 'side' );
    add_meta_box('postimagediv', __('Country Flag'), 'post_thumbnail_meta_box', 'countries', 'side', 'high');
}

The post type in this example is countries

Meta Box

Meta Box – WordPress Custom Fields Framework

The code below relates to the meta box plugin. And the code below relates to 2 custom post types. Players and Coaches. And then adding meta fields to those custom post types.

// Custom Post 1
      register_post_type( 'coaches',
          array(
              'labels' => array(
                  'name' => __( 'Coaches' ),
                  'singular_name' => __( 'Coach' )
              ),
          'public' => true,
          'has_archive' => true,
          'supports' => array('title', 'editor', 'thumbnail')
          )
      );
    register_taxonomy_for_object_type( 'category', 'coaches' );
// Custom Post 2
      register_post_type( 'players',
          array(
              'labels' => array(
                  'name' => __( 'Players' ),
                  'singular_name' => __( 'Player' )
              ),
            'public' => true,
            'has_archive' => true,
            'supports' => array('title', 'editor', 'thumbnail')
          )
      );
    register_taxonomy_for_object_type( 'category', 'players' );

// Meta Fields
  function add_meta_fields( $meta_boxes ) {
    $meta_boxes[] = array(
      'id' => 'twitter_url',
      'title' => 'Twitter Url' ,
      'post_types' => array( 'players','coaches' ),
      'context' => 'normal',
      'autosave' => false,
      'fields' => array(
        array(
          'id' => 'twitter_url',
          'type' => 'url',
          'name' => 'URL',
        ),
      ),
    );
    $meta_boxes[] = array(
      'id' => 'instagram_url',
      'title' => 'Instagram Url' ,
      'post_types' => array( 'players','coaches' ),
      'context' => 'normal',
      'autosave' => false,
      'fields' => array(
        array(
          'id' => 'instagram_url',
          'type' => 'url',
          'name' => 'URL',
        ),
      ),
    );
    $meta_boxes[] = array(
      'id' => 'facebook_url',
      'title' => 'Facebook Url' ,
      'post_types' => array( 'players','coaches' ),
      'context' => 'normal',
      'autosave' => false,
      'fields' => array(
        array(
          'id' => 'facebook_url',
          'type' => 'url',
          'name' => 'URL',
        ),
      ),
    );

    return $meta_boxes;
  }
  add_filter( 'rwmb_meta_boxes', 'add_meta_fields' );

Below is how to add a location/Address field

// Address
    $meta_boxes[] = array(
      'id' => 'address',
      'title' => 'Address' ,
      'post_types' => array( 'countries' ),
      'context' => 'normal',
      'autosave' => false,
      'fields' => array(
        array(
            'id'   => 'address',
            'name' => 'Address',
            'type' => 'text',
        ),
        array(
            'id'            => 'map',
            'name'          => 'Location',
            'type'          => 'map',

            // Default location: 'latitude,longitude[,zoom]' (zoom is optional)
            'std'           => '-6.233406,-35.049906,15',

            // Address field ID
            'address_field' => 'address',

            // Google API key
            'api_key'       => 'AIzaSyBVKag0eBXXIjS0rvi6qUYZ9sScw5kNeXQ',
        ),
      ),
    );

 

Add Admin Styles And Admin Scripts

// Styles and Scripts
add_action('admin_head', 'my_custom_styles_and_scripts');
function my_custom_styles_and_scripts() {
    echo '
     <script src="/wp-content/plugins/webfootprint-stock-manager-old/assets/js/scripts.js"></script>
     <link href="/wp-content/plugins/webfootprint-stock-manager-old/assets/css/styles.css" rel="stylesheet">
    ';
}