날짜 선택기를 사용하여보기에서 노출 된 필터를 구성하는 방법은 무엇입니까?


11

사용자가 작성 날짜, 바람직하게는 날짜 선택기를 사용하여 내 사이트 컨텐츠를 필터링 할 수 있도록 노출 된 필터를 구성하려면 어떻게해야합니까?

Content : Authored on filter를 사용하려고 시도했지만 yyyy-mm-dd hh : mm : ss 형식으로 날짜 / 시간을 입력하기 위해 날짜를 입력하는 텍스트 필드가 표시되어 사용자가 날짜를 입력 하기가 더 어려워 졌습니다. 더 많은 오류가 발생하기 쉽습니다.

7.x-3의 Drupal 8과 Drupal 7의 차이점은 무엇입니까 ?


"Content : Created"필터 중 하나를 추가하고 (다른 맛이 있음) 노출하려고 했습니까?
mpdonadio

"콘텐츠 : 생성됨"필터를 찾을 수 없습니다. "콘텐츠 : 작성일", "콘텐츠 개정일 : 작성일"및 "택시 용어 : 게시일"만 있습니다.
Sam

기억으로 갔다. "Content : Authored on"이 작동합니까?
mpdonadio

"Content : Authored on"은 사용자가 yyyy-mm-dd hh : mm : ss 형식으로 날짜를 입력 할 수있는 입력 상자를 제공합니다. 너무 복잡합니다. 날짜, 월 및 연도 드롭 다운 또는 날짜 선택기를 표시하는 방법은 무엇입니까?
Sam

3
그것은 아직 지원되지 않습니다. drupal.org/node/2648950 이번 주에 8.2.x로 마무리되기를 바라고 있습니다.
mpdonadio

답변:



1

며칠 전에 릴리스 된 새로운 패치가 있는데, 프로젝트에서 테스트하여 제대로 작동합니다. 문제는 다음과 같습니다.

노출 된 필터에서 날짜를 선택할 때 텍스트 필드 대신 날짜 유형의 양식 요소를 사용하십시오.

문제 / 동기 부여

날짜 시간 노출 필터를 추가 할 때 단순히 날짜를 선택할 수 없습니다-UX가 매우 나쁜 날짜를 수동으로 입력해야합니다.

그리고 패치는 65입니다


1

나은 노출 필터 모듈은 날짜 팝업을 포함하여 날짜 유형 필드와 통합됩니다. 이 모듈을 사용하면 날짜 팝업으로 노출 된 필터를 쉽게 추가 할 수 있습니다.

현재 베타 버전이지만 사용할 수 있습니다.


필드 api 대신 엔티티 api를 사용하여 필드를 추가하는 경우 (BaseFieldDefinitions를 통해) 필드 시간 대신 BEF가 작동하지 않고 타임 스탬프에 대해서만 작동합니다.
aaronbauman

1

해당 페이지의 jquery 날짜 선택기를 종속성으로 추가하십시오. your_theme.libraries.yml

date-picker:
  js:
    script/site-datepicker.js : {}
  dependencies:
    - core/jquery
    - core/jquery.ui.datepicker

site-datepicker.js

Drupal.behaviors.customDatepicker = {
  attach: function (context, settings) {
    jQuery(function () {
      jQuery("#datepicker").datepicker({
        dateFormat: "dd-mm-yy",
        altField: "input[data-drupal-selector=edit-created]",
        altFormat: "yy/mm/dd 23:59:59"
      });
    });
  }
};

views-exposed-form-- views-block-name .html.twig

{% if q is not empty %}
  {#
    This ensures that, if clean URLs are off, the 'q' is added first,
    as a hidden form element, so that it shows up first in the POST URL.
  #}
  {{ q }}
{% endif %}

<input id="datepicker" type="text">
<input data-drupal-selector="edit-created" data-msg-maxlength="This field field has a maximum length of 128." name="created" size="30" maxlength="128" aria-invalid="false" type="hidden">
{{ form|without('created') }}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.