2016-08-22 7 views
3

아직도가는 길 Silverstripe 3.4 나는 해결할 수없는 도전에 부딪 히고 있습니다.실버 스트라이프 | html 단축 코드 삽입 - 페이지 특정

내 사이트의 페이지에는 방문자가 본 페이지와 관련된 자체 호스팅 트랙을 재생할 수있는 오디오 플레이어가 있어야합니다. 일반적으로 HTML 형식으로 '복사 된'코드를 포함시키지 않기 때문에 다음과 같은 HTML을 플레이어의 엔진에 직접 삽입 할 수 있지만 Silverstripe의 WYSIWYG 편집기는 옵션이 아닙니다.

아직 '복사 된'코드를 허용하도록 편집기를 수정할 수 있는지 여부는 아직 조사하지 않았습니다. 다음과 같은 - - 그건 너무 옵션 ... 그래서

이 될 수 있는지 확실하지, 지금 코드를 삽입 할 수있는 방법을 찾고 해당 페이지 내 WYSIWYG을 통해 :

<!-- Start of audio player body section html codes --> 
<div id="AUDIOPLAYER_ID" style="display:block;position:relative;width:360px;height:auto;margin:0px auto 0px;"> 
<ul class="AUDIOPLAYER_CLASS" style="display:none;"> 
<li data-artist="TRACK_ARTIST" data-title="TRACK_TITLE" data-album="ALBUM_NAME" data-info="TRACK_INFO" data-image="TRACK_IMAGE" data-duration="TRACK_MINS"> 
<div class="TRACKSOURCE" data-src="SELF_HOST_TRACK_URL" data-type="audio/mpeg" /> 
</li> 
</ul> 
</div> 
<!-- End of body section HTML codes --> 

참고 : 각 오디오 플레이어는 여러 개의 플레이어를 보유 할 수있는 고유 한 ID "AUDIOPLAYER_ID"를 갖습니다.

누구든지 단축 코드 또는 WYSIWYG 개입을 통해 최상의 결과를 얻는 방법에 대한 모든 지혜를 공유 할 수 있습니까?

미리 감사드립니다.

+1

단축 코드 방법을 사용해 보셨습니까? – bummzack

+0

그래, 짧은 코드는 갈 길입니다. 여기에있는 문서 : https://docs.silverstripe.org/en/3.4/developer_guides/extending/shortcodes/ Youtube 및 Vimeo의 일부 단축 코드는 성공을위한 청사진이 될 수 있습니다. https://github.com/studiobonito/silverstripe-shortcodes ... html을 템플릿에 넣고 예제와 같이 shortcode를 통해 삽입합니다. DataObjects에서 데이터를 가져 옵니까? 아니면 수동으로 모든 필드를 삽입합니까 (오류가 발생하기 쉽습니다 ...)? – wmk

+0

이 모듈은 짧은 코드에 유용합니다. 버튼을 추가 한 다음 짧은 코드 유형을 선택한 다음 단축 코드를 선택할 수 있습니다. 이것은 데이터 객체와 잘 작동합니다. https://github.com/sheadawson/silverstripe-shortcodable –

답변

0

나는 트랙과 재생 목록 관계로

  • AudioPlayer의 데이터 객체를 구현하는 것이
  • AudioPlayer을 관리 할 수 ​​AudioPlayerAdmin은 렌더링하려면 관계 has_one의 AudioPlayer

있을 것입니다 다음

  • 페이지를 객체 오디오 플레이어 개체에는 다음 옵션이 있습니다.

    • 페이지 템플릿에서 $ AudioPlayer 변수 (객체를 반환하는 관계 이름)를 사용할 수 있으며 AudioPlayer :: forTemplate()에서 객체를 렌더링 할 수 있습니다.
    • 페이지 내용 필드에 단축 코드 [audioplayer]를 사용합니다. 처리기는 Director :: get_current_page() -> AudioPlayer()에서 현재 페이지 audioplayer를 확인할 수 있습니다.
    • 페이지 내용 필드에 단축 코드 [audioplayer, id = XXX]를 사용하십시오. 처리기는 ID로 기존 오디오 플레이어를 확인할 수 있습니다. AudioPlayer :: get() -> byID ($ id)
  • 0

    내 답변이 어리석은 지연에 대한 죄송합니다. 문제는 : # 2와 # 3을 작동시키기 전에 SS의 단축 코드를 직접 숙지해야합니다. 나는 여기에서 짝사랑 할거야.

    감사합니다.