Wordpress lấy múi giờ

Tôi không hoàn hảo về PHP, tôi đang cố gắng hiển thị múi giờ hiện tại của người dùng trên trang wordpress. Múi giờ GMT do người dùng chọn là. UTC+5. 30 nhưng get_option('gmt_offset') trả về '5. 5'

Nội dung chính Hiển thị

Làm thế nào để có được điều này '5. 5' GMT được bù thành 'UTC+5. 30' ?

đã hỏi 28 tháng 10 năm 2015 lúc 6. 53

Hướng dẫn gmt_offset wordpress

Đây là những gì tôi đã làm

$min    = 60 * get_option('gmt_offset');
$sign   = $min < 0 ? "-" : "+";
$absmin = abs($min);
$tz     = sprintf("UTC%s%02d:%02d", $sign, $absmin/60, $absmin%60);

đã trả lời 30/12/2016 lúc 23. 05

alec alec

213 huy hiệu đồng

Không phải là câu trả lời bạn đang tìm kiếm?

làm cách nào tôi có thể lấy Múi giờ của người dùng trong Wordpress nếu bạn không biết người dùng đến từ đâu

Nội dung chính

  • Không phải là câu trả lời bạn đang tìm kiếm?
  • Sự miêu tả
  • Ghi chú do người dùng đóng góp
  • Tôi có thể xem ví dụ hoạt động của plugin này ở đâu?

Giả sử nếu người dùng ở Hoa Kỳ, tôi cần lấy Múi giờ Hoa Kỳ, nếu người dùng ở Đức, tôi cần lấy Múi giờ Đức

đã hỏi 25 tháng 6 năm 2021 lúc 7. 50

6

Vì WordPress là một khung/CMS phía máy chủ nên có thể nó không có chức năng mà bạn đang tìm kiếm. Nếu bạn đang tìm cách lấy thông tin này, cách đáng tin cậy nhất có thể là hỏi người dùng

Để làm cho nó không gây đau đớn nhất có thể cho người dùng, chức năng này có thể đạt được thông qua tập lệnh phía máy khách (tức là. JavaScript) nơi bạn cố gắng suy ra múi giờ của người dùng

-new Date().getTimezoneOffset()/60;

Và sau đó yêu cầu người dùng xác nhận rằng đó là múi giờ chính xác. Xin lưu ý rằng mã phía máy khách được chạy trên máy của người dùng và có thể bị tắt hoàn toàn

đã trả lời 25 tháng 6 năm 2021 lúc 18. 45

Không phải là câu trả lời bạn đang tìm kiếm?

Truy xuất múi giờ của trang web dưới dạng chuỗi


Sự miêu tả

Sử dụng tùy chọn timezone_string để lấy tên múi giờ thích hợp nếu có, nếu không thì quay lại UTC ± offset thủ công

Giá trị trả về ví dụ

  • 'Châu Âu/Rome'
  • 'Mỹ/Bắc_Dakota/New_Salem'
  • 'UTC'
  • ‘-06. 30’
  • ‘+00. 00’
  • ‘+08. 45’

Trên cùng ↑

Trở lại

(string) Tên múi giờ PHP hoặc ±HH. bù MM.


Trên cùng ↑

Nguồn

Tập tin. wp-gồm/chức năng. php

function wp_timezone_string() {
	$timezone_string = get_option( 'timezone_string' );

	if ( $timezone_string ) {
		return $timezone_string;
	}

	$offset  = (float) get_option( 'gmt_offset' );
	$hours   = (int) $offset;
	$minutes = ( $offset - $hours );

	$sign      = ( $offset < 0 ) ? '-' : '+';
	$abs_hour  = abs( $hours );
	$abs_mins  = abs( $minutes * 60 );
	$tz_offset = sprintf( '%s%02d:%02d', $sign, $abs_hour, $abs_mins );

	return $tz_offset;
}

Mở rộng mã nguồn đầy đủ Thu gọn mã nguồn đầy đủ Xem trên Trac Xem trên GitHub



Trên cùng ↑

Nhật ký thay đổi

Nhật ký thay đổiPhiên bảnMô tả5. 3. 0Giới thiệu

Trên cùng ↑

Ghi chú do người dùng đóng góp

  • Chi tiết
  • Nhận xét
  • Cài đặt
  • Hỗ trợ
  • Phát triển

Plugin này truy xuất múi giờ của ứng dụng khách bằng cách sử dụng “Tự động phát hiện múi giờ bằng JavaScript” (http. //pellepim. cai Xô nhỏ. org/jstz/) lần đầu tiên khách hàng truy cập trang web, đặt cookie chứa múi giờ của khách hàng trên máy khách và tải lại trang. Cookie này sau đó được đọc bởi PHP và hàm date_default_timezone_set() (yêu cầu PHP 5 >= 5. 1. 0) được sử dụng để đặt múi giờ mặc định cho các tập lệnh PHP. Vì nó chạy ngay sau khi tất cả các plugin được tải, nên nó sẽ thay đổi múi giờ cho tất cả các PHP tiếp theo. Nó hữu ích trong trường hợp muốn người dùng xem một số bài đăng nhất định vào những ngày nhất định. e. g. , nếu sên bài đăng chứa số ngày, chẳng hạn như “xyz-daynr,” thì bài đăng có thể được chỉ định bởi “$slug = 'xyz'. ngày(j);” . Cookie không hết hạn trong mười năm nhưng được đặt lại nếu người dùng thay đổi múi giờ. Vì vậy, trừ khi người dùng xóa cookie hoặc di chuyển, tải lại trang chỉ xảy ra mười năm một lần

Bản quyền 2012-2015 M. D. Màu xanh lá cây, SaeĐã giải quyết. công ty trách nhiệm hữu hạn

Giấy phép

Chương trình này là phần mềm miễn phí; .
Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Chương trình này được phân phối với hy vọng nó sẽ hữu ích, nhưng KHÔNG CÓ BẤT KỲ BẢO ĐẢM NÀO; . Xem Giấy phép Công cộng GNU để biết thêm chi tiết. 1. Một lưu ý đã được đăng trong diễn đàn của chúng tôi nói rằng các trang web có thể gặp sự cố nếu thay đổi múi giờ bằng cách sử dụng date_default_timezone_set. WP hy vọng nó luôn là UTC và hiển thị mọi thứ ở các múi giờ khác nhau đạt được theo những cách khác.
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.1. A note was posted in our forum stating that sites may experience problems if changing timezones using date_default_timezone_set. WP expects it to always be UTC and display of things in different timezones are achieved in other ways:
https. //cao cấp. báo chí. com/documentation/vip-Development-tips-tricks/use-current_time-not-date_default_timezone_set/
https. // tây nam. người cai trị. net/2013/04/02/do-not-change-the-default-timezone-from-utc-in-wordpress/

Tác giả đã không quan sát thấy bất kỳ vấn đề nào trên các trang web mà plugin này đã được thử nghiệm. Tuy nhiên, dựa trên bài đăng trước đó, sẽ là khôn ngoan nếu bạn kiểm tra xem có hoạt động nào liên quan đến ngày bị trục trặc sau khi kích hoạt plugin này hay không — mặc dù không có vấn đề nào được quan sát thấy với các trang web được thử nghiệm

  1. Làm. Phát triển, nếu có thể, một cách để thực hiện việc sử dụng các phương thức, ngoài việc sử dụng hàm date_default_timezone_set(), để tạo ra chức năng giống như plugin hiện có
  • trang cài đặt
  1. Giải nén thư mục use-clients-timezone và đặt vào thư mục wp-content/plugins

  2. Kích hoạt plugin

  3. Đặt múi giờ dự phòng trong Cài đặt->Sử dụng múi giờ của khách hàng. (Múi giờ sẽ sử dụng nếu tập lệnh không lấy được múi giờ của máy khách. )

Tôi có thể xem ví dụ hoạt động của plugin này ở đâu?

http. //cầu nguyệntrung tâm. net/devotionals/a-word-for-hôm nay/

Thông tin trên trang web (trong ví dụ “A Word for Today”) sẽ dành cho ngày của khách hàng, không phải ngày của máy chủ (sẽ không có plugin)

Bạn có thể kiểm tra điều này bằng cách thay đổi thời gian trên máy tính của mình thành múi giờ ở một ngày khác. e. g. , nếu bạn sống ở New York, hãy thay đổi múi giờ trên máy tính của bạn thành múi giờ của Sydney. Bạn sẽ thấy thông tin (trong trường hợp ví dụ) cho ngày hôm sau. (Kiểm tra một trang web như http. //www. thời gian và ngày tháng. com/ để đảm bảo nhận được múi giờ ở một ngày khác với múi giờ thường được đặt trên máy tính của bạn. )

Cảm ơn bạn vì plugin hữu ích này, nó hoạt động tốt trên WP 5. 8. 2. Hãy giữ nó được duy trì

Thực hiện chính xác những gì mà nó nói

Đọc tất cả 6 đánh giá

“Sử dụng Múi giờ của Khách hàng” là phần mềm mã nguồn mở. Những người sau đây đã đóng góp cho plugin này

người đóng góp

  • drmikegreen

1. 1. 4

Đã thêm lời khuyên để kiểm tra xem không có hoạt động liên quan đến ngày tháng nào bị ảnh hưởng bất lợi bởi plugin này

1. 1. 3

Đã thay đổi đường dẫn cookie thành toàn bộ trang web

1. 1. 2

Đã thay đổi JavaScript để trang không được tải lại nếu cookie không được bật trên máy khách

1. 1

Phương thức lấy múi giờ của khách hàng đã thay đổi từ cố gắng truy xuất múi giờ của IP sang đặt cookie chứa múi giờ của khách hàng, sau đó đọc cookie đó