이 CSS Stuffing은 작동하지만 이것이 좋은 습관입니까?


9

플러그인에 동적 CSS를 포함하려고합니다. 어디에서나 검색했지만 내가하는 것과 비슷한 경우를 찾지 못했습니다. 그리고 내가 그것을 사용하는 것은 ?>wp head 등을 호출하는 것과 같은 다른 것들을 추가하지 않고 php 태그 를 닫은 후 플러그인 php 파일 끝에 CSS 파일을 직접 추가하는 것입니다 .

다음은 플러그인 파일의 끝에 직접 넣은 코드의 예입니다.

<style type="text/css">

   .innertrow { background-color: <?php get_options('css_value');?>}

</style>

좋은 습관입니까?

답변:


11

wp_add_inline_style () 을 사용 하여 플러그인과 같이 이미 정의한 스타일 시트에 추가 할 수 있습니다. 이런 방법으로 옵션 화면이나 다른 사용자 설정이 최종 스타일 출력에 영향을 줄 수 있습니다.

그러나 얼마나 많은 변경 사항을 사용자에게 제공하는지에 따라 매우 지루해질 수 있습니다. 그러나 내가 아는 한 "모범 사례"입니다.


1
그리고 WP에는 모르는 함수가 있습니다. :) +1 오프 코스.
gmazzap

2

물론 Wordpress에서 플러그인 오류로 간주되므로 권장되지 않습니다. 플러그인 활성화시 다음과 같은 오류 메시지가 출력됩니다.

The plugin generated xxx characters of unexpected output during activation. If you notice headers already sent messages, problems with syndication feeds or other issues, try deactivating or removing this plugin.

여기서 xxx는 ?>태그 뒤에 넣은 코드 + 공백의 양입니다 . <?php메인 플러그인 의 첫 번째 태그 앞 이나 뒤에 공백이나 허용되지 않는 코드를 찾는 것과 같습니다 .


1

PHP를 사용하여 CSS 파일을 동적으로 작성할 수 있다고 생각하지만 자세한 내용을 알아야합니다. 자신에 대해서는 잘 모릅니다. 나는 사람들이 내가 작업하고있는 테마에 많은 CSS를 넣는 것을 발견하면서 곧 그렇게 할 계획입니다. 여러 가지면에서 나쁜 습관이 있으므로 가능한 한 피하는 것이 가장 좋습니다. 슬프게도 하루에 24 시간 밖에 없습니다 ...!


1

동적 CSS를 추가해야하고 스타일 시트를 추가하려는 스타일 시트가 아직 추가되지 않은 경우 wp_head작업 후크에 연결 하여 출력 할 수 있습니다 .

<?php
function wpse_111373_output_plugin_css() {
    ?>
    <style type="text/css">
        .innertrow { background-color: <?php get_option('css_value'); ?>;}
    </style>
    <?php
}
add_action( 'wp_head', 'wpse_111373_output_plugin_css' );

플러그인 파일 끝에 CSS를 추가하지 마십시오. 그러나 이것이 "모범 사례"인 한 나는 모른다. :)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.