Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/themify-.../themify
File: CPT.php
'choose_from_most_used' => sprintf( __('Choose from most used %s', 'themify'), $plural ),
[500] Fix | Delete
'not_found' => sprintf( __('No %s found', 'themify'), $plural )
[501] Fix | Delete
);
[502] Fix | Delete
[503] Fix | Delete
// default options
[504] Fix | Delete
$defaults = array(
[505] Fix | Delete
'labels' => $labels,
[506] Fix | Delete
'hierarchical' => true,
[507] Fix | Delete
'rewrite' => array(
[508] Fix | Delete
'slug' => $slug
[509] Fix | Delete
)
[510] Fix | Delete
);
[511] Fix | Delete
[512] Fix | Delete
// merge default options with user submitted options
[513] Fix | Delete
$options = array_replace_recursive($defaults, $options);
[514] Fix | Delete
[515] Fix | Delete
// add the taxonomy to the object array
[516] Fix | Delete
// this is used to add columns and filters to admin pannel
[517] Fix | Delete
$this->taxonomies[] = $taxonomy_name;
[518] Fix | Delete
[519] Fix | Delete
// create array used when registering taxonomies
[520] Fix | Delete
$this->taxonomy_settings[$taxonomy_name] = $options;
[521] Fix | Delete
[522] Fix | Delete
}
[523] Fix | Delete
[524] Fix | Delete
[525] Fix | Delete
[526] Fix | Delete
/*
[527] Fix | Delete
function register_taxonomies
[528] Fix | Delete
cycles through taxonomies added with the class and registers them
[529] Fix | Delete
[530] Fix | Delete
function is used with add_action
[531] Fix | Delete
*/
[532] Fix | Delete
function register_taxonomies() {
[533] Fix | Delete
[534] Fix | Delete
if(is_array($this->taxonomy_settings)) {
[535] Fix | Delete
// foreach taxonomy registered with the post type
[536] Fix | Delete
foreach($this->taxonomy_settings as $taxonomy_name => $options) {
[537] Fix | Delete
[538] Fix | Delete
// register the taxonomy if it doesn't exist
[539] Fix | Delete
if(!taxonomy_exists($taxonomy_name)) {
[540] Fix | Delete
[541] Fix | Delete
// register the taxonomy with Wordpress
[542] Fix | Delete
register_taxonomy($taxonomy_name, $this->post_type_name, $options);
[543] Fix | Delete
[544] Fix | Delete
[545] Fix | Delete
} else {
[546] Fix | Delete
[547] Fix | Delete
// if taxonomy exists, attach exisiting taxonomy to post type
[548] Fix | Delete
register_taxonomy_for_object_type($taxonomy_name, $this->post_type_name);
[549] Fix | Delete
[550] Fix | Delete
}
[551] Fix | Delete
}
[552] Fix | Delete
}
[553] Fix | Delete
[554] Fix | Delete
}
[555] Fix | Delete
[556] Fix | Delete
[557] Fix | Delete
[558] Fix | Delete
/*
[559] Fix | Delete
function add_admin_columns
[560] Fix | Delete
adds columns to the admin edit screen
[561] Fix | Delete
[562] Fix | Delete
function is used with add_action
[563] Fix | Delete
*/
[564] Fix | Delete
[565] Fix | Delete
function add_admin_columns($columns) {
[566] Fix | Delete
[567] Fix | Delete
// if no user columns have been specified use following defaults
[568] Fix | Delete
if(!isset($this->columns)) {
[569] Fix | Delete
[570] Fix | Delete
// default columns
[571] Fix | Delete
$columns = array(
[572] Fix | Delete
'cb' => '<input type="checkbox" />',
[573] Fix | Delete
'title' => __('Title', 'themify')
[574] Fix | Delete
);
[575] Fix | Delete
[576] Fix | Delete
// if there are taxonomies registered to the post type
[577] Fix | Delete
if(is_array($this->taxonomies)) {
[578] Fix | Delete
[579] Fix | Delete
// create a column for each taxonomy
[580] Fix | Delete
foreach($this->taxonomies as $tax) {
[581] Fix | Delete
[582] Fix | Delete
// get the taxonomy object for labels
[583] Fix | Delete
$taxonomy_object = get_taxonomy($tax);
[584] Fix | Delete
[585] Fix | Delete
// column key is the slug, value is friendly name
[586] Fix | Delete
$columns[$tax] = $taxonomy_object->labels->name;
[587] Fix | Delete
[588] Fix | Delete
}
[589] Fix | Delete
[590] Fix | Delete
}
[591] Fix | Delete
[592] Fix | Delete
// if post type supports comments
[593] Fix | Delete
if(post_type_supports($this->post_type_name, 'comments')) {
[594] Fix | Delete
$columns['comments'] = '<img alt="Comments" src="'. admin_url() .'images/comment-grey-bubble.png">';
[595] Fix | Delete
}
[596] Fix | Delete
[597] Fix | Delete
// add date of post to end of columns
[598] Fix | Delete
$columns['date'] = __('Date', 'themify');
[599] Fix | Delete
[600] Fix | Delete
} else {
[601] Fix | Delete
[602] Fix | Delete
// use user submitted columns
[603] Fix | Delete
// these are defined using the object columns() method
[604] Fix | Delete
$columns = $this->columns;
[605] Fix | Delete
[606] Fix | Delete
}
[607] Fix | Delete
[608] Fix | Delete
return $columns;
[609] Fix | Delete
[610] Fix | Delete
}
[611] Fix | Delete
[612] Fix | Delete
[613] Fix | Delete
[614] Fix | Delete
/*
[615] Fix | Delete
function populate_admin_columns
[616] Fix | Delete
populates custom columns on the admin edit screen
[617] Fix | Delete
[618] Fix | Delete
function is used with add_action
[619] Fix | Delete
*/
[620] Fix | Delete
[621] Fix | Delete
function populate_admin_columns($column, $post_id) {
[622] Fix | Delete
[623] Fix | Delete
// get wordpress $post object
[624] Fix | Delete
global $post;
[625] Fix | Delete
[626] Fix | Delete
// determine the column
[627] Fix | Delete
switch($column) {
[628] Fix | Delete
[629] Fix | Delete
// if column is a taxonomy associated with the post type
[630] Fix | Delete
case (taxonomy_exists($column)) :
[631] Fix | Delete
[632] Fix | Delete
// Get the taxonomy for the post
[633] Fix | Delete
$terms = get_the_terms($post_id, $column);
[634] Fix | Delete
[635] Fix | Delete
// if we have terms
[636] Fix | Delete
if (!empty($terms)) {
[637] Fix | Delete
[638] Fix | Delete
$output = array();
[639] Fix | Delete
[640] Fix | Delete
// Loop through each term, linking to the 'edit posts' page for the specific term.
[641] Fix | Delete
foreach($terms as $term) {
[642] Fix | Delete
[643] Fix | Delete
// output is an array of terms associated with the post
[644] Fix | Delete
$output[] = sprintf(
[645] Fix | Delete
[646] Fix | Delete
// define link
[647] Fix | Delete
'<a href="%s">%s</a>',
[648] Fix | Delete
[649] Fix | Delete
// create filter url
[650] Fix | Delete
esc_url(add_query_arg(array('post_type' => $post->post_type, $column => $term->slug), 'edit.php')),
[651] Fix | Delete
[652] Fix | Delete
// create friendly term name
[653] Fix | Delete
esc_html(sanitize_term_field('name', $term->name, $term->term_id, $column, 'display'))
[654] Fix | Delete
[655] Fix | Delete
);
[656] Fix | Delete
[657] Fix | Delete
}
[658] Fix | Delete
[659] Fix | Delete
// Join the terms, separating them with a comma
[660] Fix | Delete
echo join(', ', $output);
[661] Fix | Delete
[662] Fix | Delete
// if no terms found
[663] Fix | Delete
} else {
[664] Fix | Delete
[665] Fix | Delete
// get the taxonomy object for labels
[666] Fix | Delete
$taxonomy_object = get_taxonomy($column);
[667] Fix | Delete
[668] Fix | Delete
// echo no terms
[669] Fix | Delete
echo sprintf( __('No %s', 'themify'), $taxonomy_object->labels->name );
[670] Fix | Delete
}
[671] Fix | Delete
[672] Fix | Delete
[673] Fix | Delete
break;
[674] Fix | Delete
[675] Fix | Delete
// if column is for the post ID
[676] Fix | Delete
case 'post_id' :
[677] Fix | Delete
[678] Fix | Delete
echo esc_attr( $post->ID );
[679] Fix | Delete
[680] Fix | Delete
break;
[681] Fix | Delete
[682] Fix | Delete
// if the column is prepended with 'meta_'
[683] Fix | Delete
// this will automagically retrieve the meta values and display them
[684] Fix | Delete
case (preg_match('/^meta_/', $column) ? true : false) :
[685] Fix | Delete
[686] Fix | Delete
// meta_book_author (meta key = book_author)
[687] Fix | Delete
$x = substr($column, 5);
[688] Fix | Delete
[689] Fix | Delete
$meta = get_post_meta($post->ID, $x);
[690] Fix | Delete
[691] Fix | Delete
echo join(', ', $meta);
[692] Fix | Delete
[693] Fix | Delete
break;
[694] Fix | Delete
[695] Fix | Delete
// if the column is post thumbnail
[696] Fix | Delete
case 'icon' :
[697] Fix | Delete
[698] Fix | Delete
// create the edit link
[699] Fix | Delete
$link = add_query_arg(array('post' => $post->ID, 'action' => 'edit'), 'post.php');
[700] Fix | Delete
[701] Fix | Delete
// if it post has a featured image
[702] Fix | Delete
if(has_post_thumbnail()) {
[703] Fix | Delete
[704] Fix | Delete
// display post featured image with edit link
[705] Fix | Delete
echo '<a href="'. esc_url( $link ) .'">';
[706] Fix | Delete
the_post_thumbnail(array(60, 60));
[707] Fix | Delete
echo '</a>';
[708] Fix | Delete
[709] Fix | Delete
} else {
[710] Fix | Delete
[711] Fix | Delete
// display default media image with link
[712] Fix | Delete
echo '<a href="'.esc_url( $link ).'"><img src="'. site_url('/wp-includes/images/crystal/default.png') .'" alt="'. $post->post_title .'" /></a>';
[713] Fix | Delete
[714] Fix | Delete
}
[715] Fix | Delete
[716] Fix | Delete
break;
[717] Fix | Delete
[718] Fix | Delete
// default case checks if the column has a user function
[719] Fix | Delete
// this is most commonly used for custom fields
[720] Fix | Delete
default :
[721] Fix | Delete
[722] Fix | Delete
// if there are user custom columns to populate
[723] Fix | Delete
if(isset($this->custom_populate_columns,$this->custom_populate_columns[$column]) && is_array($this->custom_populate_columns) && is_callable($this->custom_populate_columns[$column])) {
[724] Fix | Delete
[725] Fix | Delete
// run the function
[726] Fix | Delete
//$this->custom_populate_columns[$column]($column, $post);
[727] Fix | Delete
call_user_func( $this->custom_populate_columns[$column], $column, $post );
[728] Fix | Delete
[729] Fix | Delete
}
[730] Fix | Delete
[731] Fix | Delete
break;
[732] Fix | Delete
[733] Fix | Delete
} // end switch($column)
[734] Fix | Delete
[735] Fix | Delete
}
[736] Fix | Delete
[737] Fix | Delete
[738] Fix | Delete
[739] Fix | Delete
/*
[740] Fix | Delete
function filters
[741] Fix | Delete
user function to define which taxonomy filters to display on the admin page
[742] Fix | Delete
[743] Fix | Delete
@param array $filters an array of taxonomy filters to display
[744] Fix | Delete
[745] Fix | Delete
*/
[746] Fix | Delete
[747] Fix | Delete
function filters($filters = array()) {
[748] Fix | Delete
[749] Fix | Delete
$this->filters = $filters;
[750] Fix | Delete
[751] Fix | Delete
}
[752] Fix | Delete
[753] Fix | Delete
[754] Fix | Delete
[755] Fix | Delete
[756] Fix | Delete
/*
[757] Fix | Delete
function add_taxtonomy_filters
[758] Fix | Delete
creates select fields for filtering posts by taxonomies on admin edit screen
[759] Fix | Delete
[760] Fix | Delete
*/
[761] Fix | Delete
[762] Fix | Delete
function add_taxonomy_filters() {
[763] Fix | Delete
[764] Fix | Delete
global $typenow;
[765] Fix | Delete
[766] Fix | Delete
// must set this to the post type you want the filter(s) displayed on
[767] Fix | Delete
if($typenow === $this->post_type_name){
[768] Fix | Delete
[769] Fix | Delete
// if custom filters are defined use those
[770] Fix | Delete
if(is_array($this->filters)) {
[771] Fix | Delete
$filters = $this->filters;
[772] Fix | Delete
// else default to use all taxonomies associated with the post
[773] Fix | Delete
} else {
[774] Fix | Delete
$filters = (array) $this->taxonomies;
[775] Fix | Delete
}
[776] Fix | Delete
[777] Fix | Delete
// foreach of the taxonomies we want to create filters for
[778] Fix | Delete
foreach($filters as $tax_slug) {
[779] Fix | Delete
[780] Fix | Delete
// object for taxonomy, doesn't contain the terms
[781] Fix | Delete
$tax = get_taxonomy($tax_slug);
[782] Fix | Delete
[783] Fix | Delete
// get taxonomy terms and order by name
[784] Fix | Delete
$args = array(
[785] Fix | Delete
'taxonomy'=>$tax_slug,
[786] Fix | Delete
'orderby' => 'name',
[787] Fix | Delete
'hide_empty' => false
[788] Fix | Delete
);
[789] Fix | Delete
[790] Fix | Delete
// get taxonomy terms
[791] Fix | Delete
$terms = get_terms($args);
[792] Fix | Delete
[793] Fix | Delete
// if we have terms
[794] Fix | Delete
if($terms) {
[795] Fix | Delete
[796] Fix | Delete
// set up select box
[797] Fix | Delete
printf(' &nbsp;<select name="%s" class="postform">', $tax_slug);
[798] Fix | Delete
[799] Fix | Delete
// default show all
[800] Fix | Delete
printf('<option value="0">%s</option>', 'Show all ' . $tax->label);
[801] Fix | Delete
[802] Fix | Delete
// foreach term create an option field
[803] Fix | Delete
foreach ($terms as $term) {
[804] Fix | Delete
[805] Fix | Delete
// if filtered by this term make it selected
[806] Fix | Delete
if(isset($_GET[$tax_slug]) && $_GET[$tax_slug] === $term->slug) {
[807] Fix | Delete
[808] Fix | Delete
printf('<option value="%s" selected="selected">%s (%s)</option>', $term->slug, $term->name, $term->count);
[809] Fix | Delete
[810] Fix | Delete
// create option for taxonomy
[811] Fix | Delete
} else {
[812] Fix | Delete
[813] Fix | Delete
printf('<option value="%s">%s (%s)</option>', $term->slug, $term->name, $term->count);
[814] Fix | Delete
[815] Fix | Delete
}
[816] Fix | Delete
[817] Fix | Delete
}
[818] Fix | Delete
[819] Fix | Delete
// end the select field
[820] Fix | Delete
print('</select>&nbsp;');
[821] Fix | Delete
[822] Fix | Delete
}
[823] Fix | Delete
[824] Fix | Delete
}
[825] Fix | Delete
[826] Fix | Delete
}
[827] Fix | Delete
[828] Fix | Delete
}
[829] Fix | Delete
[830] Fix | Delete
[831] Fix | Delete
[832] Fix | Delete
/*
[833] Fix | Delete
function columns
[834] Fix | Delete
user function to choose columns to be displayed on the admin edit screen
[835] Fix | Delete
[836] Fix | Delete
@param array $columns an array of columns to be displayed
[837] Fix | Delete
[838] Fix | Delete
*/
[839] Fix | Delete
[840] Fix | Delete
function columns($columns) {
[841] Fix | Delete
[842] Fix | Delete
// if columns is set
[843] Fix | Delete
if(isset($columns)) {
[844] Fix | Delete
[845] Fix | Delete
// assign user submitted columns to object
[846] Fix | Delete
$this->columns = $columns;
[847] Fix | Delete
[848] Fix | Delete
}
[849] Fix | Delete
[850] Fix | Delete
}
[851] Fix | Delete
[852] Fix | Delete
[853] Fix | Delete
[854] Fix | Delete
/*
[855] Fix | Delete
function populate_column
[856] Fix | Delete
user function to define what and how to populate a specific admin column
[857] Fix | Delete
[858] Fix | Delete
@param string $column_name the name of the column to populate
[859] Fix | Delete
@param func $function an anonymous function to run when populating the column
[860] Fix | Delete
*/
[861] Fix | Delete
[862] Fix | Delete
function populate_column($column_name, $function) {
[863] Fix | Delete
[864] Fix | Delete
$this->custom_populate_columns[$column_name] = $function;
[865] Fix | Delete
[866] Fix | Delete
}
[867] Fix | Delete
[868] Fix | Delete
[869] Fix | Delete
[870] Fix | Delete
/*
[871] Fix | Delete
function sortable
[872] Fix | Delete
user function define what columns are sortable in admin edit screen
[873] Fix | Delete
[874] Fix | Delete
@param array $columns an array of the columns that are sortable
[875] Fix | Delete
*/
[876] Fix | Delete
[877] Fix | Delete
function sortable($columns = array()) {
[878] Fix | Delete
[879] Fix | Delete
// assign user defined sortable columns to object variable
[880] Fix | Delete
$this->sortable = $columns;
[881] Fix | Delete
[882] Fix | Delete
// run filter to make columns sortable
[883] Fix | Delete
$this->add_filter('manage_edit-' . $this->post_type_name . '_sortable_columns', array($this, 'make_columns_sortable'));
[884] Fix | Delete
[885] Fix | Delete
// run action that sorts columns on request
[886] Fix | Delete
$this->add_action('load-edit.php', array($this, 'load_edit'));
[887] Fix | Delete
[888] Fix | Delete
}
[889] Fix | Delete
[890] Fix | Delete
[891] Fix | Delete
[892] Fix | Delete
/*
[893] Fix | Delete
function make_columns_sortable
[894] Fix | Delete
internal function that adds any user defined sortable columns to wordpress default columns
[895] Fix | Delete
[896] Fix | Delete
*/
[897] Fix | Delete
[898] Fix | Delete
function make_columns_sortable($columns) {
[899] Fix | Delete
[900] Fix | Delete
// for each sortable column
[901] Fix | Delete
foreach($this->sortable as $column => $values) {
[902] Fix | Delete
[903] Fix | Delete
// make an array to merege into wordpress sortable columns
[904] Fix | Delete
$sortable_columns[$column] = $values[0];
[905] Fix | Delete
[906] Fix | Delete
}
[907] Fix | Delete
[908] Fix | Delete
[909] Fix | Delete
// merge sortable columns array into wordpress sortable columns
[910] Fix | Delete
return array_merge($sortable_columns, $columns);
[911] Fix | Delete
[912] Fix | Delete
}
[913] Fix | Delete
[914] Fix | Delete
[915] Fix | Delete
[916] Fix | Delete
/*
[917] Fix | Delete
function load_edit
[918] Fix | Delete
only sort columns on the edit.php page when requested
[919] Fix | Delete
[920] Fix | Delete
*/
[921] Fix | Delete
[922] Fix | Delete
function load_edit() {
[923] Fix | Delete
[924] Fix | Delete
// run filter to sort columns when requested
[925] Fix | Delete
$this->add_filter( 'request', array($this, 'sort_columns') );
[926] Fix | Delete
[927] Fix | Delete
}
[928] Fix | Delete
[929] Fix | Delete
[930] Fix | Delete
[931] Fix | Delete
/*
[932] Fix | Delete
function sort columns
[933] Fix | Delete
internal function that sorts columns on request
[934] Fix | Delete
[935] Fix | Delete
run by load_edit() filter
[936] Fix | Delete
[937] Fix | Delete
@param array $vars the query vars submitted by user
[938] Fix | Delete
[939] Fix | Delete
*/
[940] Fix | Delete
[941] Fix | Delete
function sort_columns($vars) {
[942] Fix | Delete
[943] Fix | Delete
// cycle through all sortable columns submitted by the user
[944] Fix | Delete
foreach($this->sortable as $values) {
[945] Fix | Delete
[946] Fix | Delete
// retrieve the meta key from the user submitted array of sortable columns
[947] Fix | Delete
$meta_key = $values[0];
[948] Fix | Delete
[949] Fix | Delete
[950] Fix | Delete
// if the optional parameter is set and is set to true
[951] Fix | Delete
$orderby = isset($values[1]) && true === $values[1]?'meta_value_num':'meta_value';
[952] Fix | Delete
[953] Fix | Delete
// Check if we're viewing this post type
[954] Fix | Delete
if (isset($vars['post_type'],$vars['orderby']) && $meta_key === $vars['orderby'] && $this->post_type_name === $vars['post_type']) {
[955] Fix | Delete
[956] Fix | Delete
[957] Fix | Delete
// merge the query vars with our custom variables
[958] Fix | Delete
$vars = array_merge($vars,
[959] Fix | Delete
array(
[960] Fix | Delete
'meta_key' => $meta_key,
[961] Fix | Delete
'orderby' => $orderby
[962] Fix | Delete
)
[963] Fix | Delete
);
[964] Fix | Delete
[965] Fix | Delete
}
[966] Fix | Delete
[967] Fix | Delete
}
[968] Fix | Delete
[969] Fix | Delete
return $vars;
[970] Fix | Delete
}
[971] Fix | Delete
[972] Fix | Delete
[973] Fix | Delete
[974] Fix | Delete
/*
[975] Fix | Delete
function menu icon
[976] Fix | Delete
used to change the menu icon in the admin dashboard
[977] Fix | Delete
pass name of dashicon, list found here http://melchoyce.github.io/dashicons/
[978] Fix | Delete
[979] Fix | Delete
@param mixed $icon a string of the name of the icon to use
[980] Fix | Delete
*/
[981] Fix | Delete
[982] Fix | Delete
function menu_icon($icon = 'dashicons-admin-page') {
[983] Fix | Delete
[984] Fix | Delete
// WP 3.8 changed the icon system to use an icon font.
[985] Fix | Delete
// http://melchoyce.github.io/dashicons/
[986] Fix | Delete
[987] Fix | Delete
$this->options['menu_icon'] = is_string($icon) && stripos($icon, 'dashicons') !== FALSE?$icon:'dashicons-admin-page';
[988] Fix | Delete
}
[989] Fix | Delete
}
[990] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function