Function Reference: geodir_get_wpml_element_id

Summary

Returns WPML element ID.

Package

GeoDirectory

Parameters

$page_id
(int) (required) The page ID.

Default: None
$post_type
(string) (required) The post type.

Default: None

Return Values

(int)
  • Element ID when exists.
  • Else the page id.

Change Log

Since: 1.0.0

Source File

geodir_get_wpml_element_id() is located in geodirectory-functions/general_functions.php [Line: 2167]

Source Code

function geodir_get_wpml_element_id( $page_id, $post_type ) {
	global $sitepress;
	if ( geodir_wpml_multilingual_status() && ! empty( $sitepress ) && isset( $sitepress->queries ) ) {
		$trid = $sitepress->get_element_trid( $page_id, $post_type );

		if ( $trid > 0 ) {
			$translations = $sitepress->get_element_translations( $trid, $post_type );

			$lang = $sitepress->get_current_language();
			$lang = $lang ? $lang : $sitepress->get_default_language();

			if ( ! empty( $translations ) && ! empty( $lang ) && isset( $translations[ $lang ] ) && isset( $translations[ $lang ]->element_id ) && ! empty( $translations[ $lang ]->element_id ) ) {
				$page_id = $translations[ $lang ]->element_id;
			}
		}
	}

	return $page_id;
}