Editing or posting taking too long due to high number of users

  • Autor Autor palalo
  • Fecha de inicio Fecha de inicio
palalo

palalo

Eta
Verificación en dos pasos activada
Bueno hace un tiempo que tengo este drama, pero nunca se me ocurrió mirar en el código :S resulta que cuando intento cargar edit.php o post.php para editar o postear tarda una eternidad en cargar y cuando esta a punto de cargar se queda todo en blanco por varios segundos y luego aparece todo de golpe :S

no tenia idea que era y resulta que en mi blog tengo mas de 22 mil usuarios y cada vez que quiero editar o crear un post los carga a todos entonces se hace muy pero muy pesada la pagina y eso es lo que ocasiona el problema.

alguno sabe como editar los archivos edit.php y post.php para que no cargue la lista de usuarios? intente durante un rato pero no logro hacerlo.
 
Podrias adjuntar una foto?.. porque en que parte de edit te salen los usuarios =/ ?
 
ese es el tema, no tengo idea, por que viendo la lista de post para editar normal no hay ninguna opcion que tenga que ver con los usuarios, ahora si le das a crt+u aparecen los 22mil usuarios :S
 
Control + U me muestra es el codigo de fuente de dicha web.. .. cuando estas en editar noticias ¿no te sale arriba Opciones de pantalla? alli limitas lo que quieres que aparesca en esa pagina.
 
si en el código muestra todos los usuarios y por eso tarda en cargar.

no hace nada opciones de pantalla, tapa para que uno no lo vea pero en si sigue quedando ahí así que carga lento igual.

tengo que encontrar en edit.php lo que llama a la lista de usuarios
 
Muestarme foto de tu codigo de fuente es que a mi no me sale eso.. para poderte ayudar.. tengo wordpress en localhost y me es facil ayudarte
 
metete en WP-admin, busca edit.php y.. busca la linea 145 lo cual veras esto:

PHP:
	$user_posts_count = $wpdb->get_var( $wpdb->prepare("SELECT COUNT(1) FROM $wpdb->posts WHERE post_type = '%s' AND post_status NOT IN ('trash', 'auto-draft') AND post_author = %d", $post_type, $current_user->ID) );
y quita esto..


AND post_author = %d

prueba a ver.

¿te sirvio?
 
nop siguen apareciendo todos los usuarios :S
 
ya va esos usarios no vienen de ese archivo dame un segundo.. 😀

¿que version de wordpress usas?
 
la ultima 3.0.1

Edit: a lo bestia me fui a users.php pero el que esta dentro de include y borre todo lo que tenia XD ahora carga rapidisimo
 
Última edición:
en mi wordpress que tambien es la ultima hice un filtrado de todos los archivos y busque author</span> como te sale a ti y ninguno me arrojo resultados.. sigo buscando a ver de donde proviene ese query.
 
cual es tu blog?
 
edite el mensaje anterior

a lo bestia me fui a users.php pero el que esta dentro de include y borre todo lo que tenia XD ahora carga rapidísimo

la foto venia cuando navegaba por edit.php

disculpa izar prefiero no dar la dirección del blog

gracias fleming por la paciencia y la ayuda!
 
Linea 928 del archivo wp-admin/includes/template.php comenta esa linea para que quede asi:


PHP:
<?php endif; // $bulk
/*
	if ( post_type_supports( $screen->post_type, 'author' ) ) :
		$authors = get_editable_user_ids( get_current_user_id(), true, $screen->post_type ); // TODO: ROLE SYSTEM
		$authors_dropdown = '';
		if ( $authors && count( $authors ) > 1 ) :
			$users_opt = array('include' => $authors, 'name' => 'post_author', 'class'=> 'authors', 'multi' => 1, 'echo' => 0);
			if ( $bulk )
				$users_opt['show_option_none'] = __('&mdash; No Change &mdash;');
			$authors_dropdown  = '<label>';
			$authors_dropdown .= '<span class="title">' . __( 'Author' ) . '</span>';
			$authors_dropdown .= wp_dropdown_users( $users_opt );
			$authors_dropdown .= '</label>';

		endif; // authors
		
		*/
?>
 
Linea 928 del archivo wp-admin/includes/template.php comenta esa linea para que quede asi:


PHP:
<?php endif; // $bulk
/*
	if ( post_type_supports( $screen->post_type, 'author' ) ) :
		$authors = get_editable_user_ids( get_current_user_id(), true, $screen->post_type ); // TODO: ROLE SYSTEM
		$authors_dropdown = '';
		if ( $authors && count( $authors ) > 1 ) :
			$users_opt = array('include' => $authors, 'name' => 'post_author', 'class'=> 'authors', 'multi' => 1, 'echo' => 0);
			if ( $bulk )
				$users_opt['show_option_none'] = __('&mdash; No Change &mdash;');
			$authors_dropdown  = '<label>';
			$authors_dropdown .= '<span class="title">' . __( 'Author' ) . '</span>';
			$authors_dropdown .= wp_dropdown_users( $users_opt );
			$authors_dropdown .= '</label>';

		endif; // authors
		
		*/
?>

me genera un terrible error, el tema esta en el include de user.php creo, pero no quiero dejarlo completamente vacio no valla a ser que me afecte a otra parte de la administracion
 
sorry hazlo desde la primera linea la de antes:

PHP:
<?php /* if ( !$bulk ) : ?>
		<label><span class="title"><?php _e( 'Date' ); ?></span></label>
		<div class="inline-edit-date">
			<?php touch_time(1, 1, 4, 1); ?>
		</div>
		<br class="clear" />

te quedaria asi:


PHP:
<?php endif; // $bulk
//endif; // post_type_supports title ?>

<?php /* if ( !$bulk ) : ?>
		<label><span class="title"><?php _e( 'Date' ); ?></span></label>
		<div class="inline-edit-date">
			<?php touch_time(1, 1, 4, 1); ?>
		</div>
		<br class="clear" />

<?php endif; // $bulk
/*
	if ( post_type_supports( $screen->post_type, 'author' ) ) :
		$authors = get_editable_user_ids( get_current_user_id(), true, $screen->post_type ); // TODO: ROLE SYSTEM
		$authors_dropdown = '';
		if ( $authors && count( $authors ) > 1 ) :
			$users_opt = array('include' => $authors, 'name' => 'post_author', 'class'=> 'authors', 'multi' => 1, 'echo' => 0);
			if ( $bulk )
				$users_opt['show_option_none'] = __('&mdash; No Change &mdash;');
			$authors_dropdown  = '<label>';
			$authors_dropdown .= '<span class="title">' . __( 'Author' ) . '</span>';
			$authors_dropdown .= wp_dropdown_users( $users_opt );
			$authors_dropdown .= '</label>';

		endif; // authors
		
		*/
?>
 
bueno por las dudas que a alguno le pase directamente borre lo siguiente

Insertar CODE, HTML o PHP:
<?php endif; // $bulk

	if ( post_type_supports( $screen->post_type, 'author' ) ) :
		$authors = get_editable_user_ids( get_current_user_id(), true, $screen->post_type ); // TODO: ROLE SYSTEM
		$authors_dropdown = '';
		if ( $authors && count( $authors ) > 1 ) :
			$users_opt = array('include' => $authors, 'name' => 'post_author', 'class'=> 'authors', 'multi' => 1, 'echo' => 0);
			if ( $bulk )
				$users_opt['show_option_none'] = __('&mdash; No Change &mdash;');
			$authors_dropdown  = '<label>';
			$authors_dropdown .= '<span class="title">' . __( 'Author' ) . '</span>';
			$authors_dropdown .= wp_dropdown_users( $users_opt );
			$authors_dropdown .= '</label>';

		endif; // authors
?>

<?php if ( !$bulk ) echo $authors_dropdown;
endif; // post_type_supports author

if ( !$bulk ) :
?>

o simplemente hacer lo que dijo el amigo fleming.

gracias fuiste una tremenda ayuda! dedo verde
 
Última edición:
Atrás
Arriba