PHP - Iconos en php para una App

 
Vista:
Imágen de perfil de Adolfo

Iconos en php para una App

Publicado por Adolfo (3 intervenciones) el 23/11/2021 18:31:50
Hola!

Estoy programando una red social con buddypress, ya lo tengo todo a falta de agregar unos botones, pero tengo que generar una url dinámica (porque la url lleva el nombre de usuario para que funcione) y no soy capaz de hacerlo. Sé que es una chorrada pero no controlo de PHP, si me podéis ayudar os lo agradecería la vida.

Adjunto foto de lo que quiero conseguir:


Captura-de-pantalla-2021-11-22-a-las-23.40.01

Por ejemplo la foto de perfil me ha funcionado con esto:
1
2
3
4
5
6
<?php
				$user_link    = function_exists( 'bp_core_get_user_domain' ) ? bp_core_get_user_domain( get_current_user_id() ) : get_author_posts_url( get_current_user_id() );
				$current_user = wp_get_current_user();
				?>
				<div class="iconodeperfil">
					<a href="<?php echo $user_link; ?>"><?php echo get_avatar( get_current_user_id(), 100 ); ?></a>

Pero las notificaciones, tengo esto y no funciona el enlace directo (url: "(nombredeusuario)/notificaciones"), solo los avisos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
	$notifications = bp_notifications_get_notifications_for_user( bp_loggedin_user_id() );
	if ( $notifications ) {
		?>
		<ul id="bp-notify" class="bp-header-submenu bp-dropdown">
		<?php
			rsort( $notifications );
		foreach ( $notifications as $notification ) {
			?>
				<li><?php echo $notification; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></li>
							   <?php
		}
		?>
			<li class="bp-view-all">
				<a href="<?php echo esc_url( bp_loggedin_user_domain() . $bp->notifications->slug ); ?>"><?php esc_html_e( 'Ver todas'); ?></a>
			</li>
		</ul>
	<?php } else { ?>
	  <ul id="bp-notify" class="bp-header-submenu bp-dropdown bp-notify">
		<li><a href="<?php esc_url( bp_loggedin_user_domain() . BP_NOTIFICATIONS_SLUG ); ?>"><?php esc_html_e( 'No tienes notificaciones nuevas'); ?></a></li>
	  </ul>

Y de poner las solicitudes de amistad por ejemplo ya no tengo ni idea, sólo tiene que llevar a una url que sea: "dominio/miembros/(nombredeusuario)/amigos"

Si me pudierais ayudar me salvabais la vida... Muchísimas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 393
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Iconos en php para una App

Publicado por Jefferson (203 intervenciones) el 25/11/2021 04:12:13
Hola amigo.

Para lograr lo que pretendes, dentro de tantas opciones yo lo hago por .htaccess.

En ella activas la reescritura y el redericcionamiento con una expresión regular que entienda que después del dominio/miembros/nombre_amigo la redireccione a un archivo miembros/index.php y que lea el get

Estando ya en Index creamos una consulta con el valor get de la dirección y que será nombre_amigo que busque en tus tablas el nombre de ese amigo (imagino que ese campo lo llamaras sub_dominio)

Al encontrarlo obtienes toda la información de ese nombre_amigo

Y procedes a pintar toda la información en el mismo Index
cómo lo haría Facebook

Entonces en la barra dirección quedaria www.dominio.com/miembros/nombre_amigo

Y todos felices.

Saludos, desde Venezuela
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Adolfo

Iconos en php para una App

Publicado por Adolfo (3 intervenciones) el 25/11/2021 05:13:48
Claro, pero en este caso lo que hace falta es generar una url que dependa del usuario que esté logueado en la red social.

Es decir, si yo me llamo @adolfo, la url de las solicitudes de amistad seria "dominio/miembros/adolfo/amigos", si otro usuario se conecta, en el mismo botón la url sería la misma pero cambiando su nombre de usuario. Lo mismo para cualquier otro enlace que quiera generar, como las notificaciones "dominio/miembros/adolfo/notificaciones".

Seguro que se puede hacer por .htaccess también, pero me da la impresión de que es incluso más sencillo, directamente modificando, como es el caso, el propio navbar.

El problema es que a mí me sale antes lo difícil que lo fácil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 393
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Iconos en php para una App

Publicado por Jefferson (203 intervenciones) el 25/11/2021 13:52:50
Una pregunta?

Y este Adolfo es una carpeta que está dentro de la carpeta miembros?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Adolfo

Iconos en php para una App

Publicado por Adolfo (3 intervenciones) el 25/11/2021 14:06:18
Esa es la cuestión, que no hay un archivo dentro de un directorio, si no sería muy fácil. Hay que hacer una llamada a la base de datos para sacar el ID de usuario y que lo ponga justo en esa parte de la url.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 393
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Iconos en php para una App

Publicado por Jefferson (203 intervenciones) el 26/11/2021 00:35:40
Pues como te dije ... Tienes que usar .htaccess

De lo contrario, ni idea de cómo hacerlo.

Yo lo hago así y hasta los momentos sin problemas
Fíjate en esta página https://www.merca.red/travel_agency

travel_agency No es carpeta, ni es un archivo, de hecho no existe en el directorio raíz.

.htaccess hace lo que te comenté y index.php es quien crea la página.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

Iconos en php para una App

Publicado por Jose (7 intervenciones) el 29/11/2021 17:27:08
Que interesante es esto.

por como lo veo, siempre seria necesario que uses .htaccess para las url amigables
de ahi tienes 2 opciones
1.- seguir usando htaccess para darle variables segun cada url
2.- usar explode() de php asi separar la url
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar