%가 포함된 텍스트 편집 중 오류 발생

백분율 기호(%)가 포함된 텍스트를 편집할 때 문제가 발생합니다.

해당 기호가 포함된 텍스트는 수정할 수 없으며, 저장 후 텍스트가 사라져 사이트에 표시되지 않습니다.

문제를 해결하는 데 도움을 주세요.

텍스트 예시:
44

1개의 좋아요

href= 안에서 사용되는 %는 숫자 값을 사용하여 문자를 표시하기 위한 이스케이프 문자입니다. 따라서 %{는 % 뒤에 숫자가 오는 것이 아닙니다.

%를 %25로 변경해 보세요.

참고: Pass a percent (%) sign in a url and get exact value of it using php

3개의 좋아요

감사합니다! 하지만 이 방법으로 문제가 해결되지 않습니다. 이 경우 변경 사항이 저장되기는 하지만, 안타깝게도 링크가 작동하지 않습니다…

1개의 좋아요

무엇을 이루고자 하시나요? 링크의 href 값을 변경하고 싶으신 건가요?

2개의 좋아요

@simon 아니요, 사이트에서 몇 가지 텍스트를 수정해야 하지만 이렇게 하지 못합니다. % 기호가 포함된 텍스트는 변경할 수 없습니다. 저장하면 텍스트가 사라져 사이트에 표시되지 않습니다.

예를 들어, 이 텍스트를 변경할 수 없습니다:
42

하지만 이 텍스트에서 %를 삭제하면 변경 사항이 완벽하게 저장됩니다.

1개의 좋아요

@simon 이 영상을 볼 수 있습니다: Dropbox - Error - Simplify your life

3개의 좋아요

해당 텍스트의 첫 부분(## [Welcome to %{title}](#welcome))은 링크가 포함된 h2 요소를 생성하는 마크다운입니다. 이 링크의 href는 "#welcome"으로 설정되어 있습니다. %{title} 태그는 디스코스가 사이트 제목을 텍스트에 치환하기 위해 사용하는 자리표시자입니다.

이 텍스트를 사용자 지정할 수 있어야 하지만, 유효한 마크다운을 사용하고 있는지 확인해야 합니다. 예를 들어, 아래는 작동합니다:

## [Welcome to My Demo Site](#welcome)
계정이 필요합니다. 계속하려면 계정을 만들거나 로그인하세요.

아래와 같이 h2 요소에서 링크를 제거하는 것도 작동합니다:

## Welcome to My Demo Site
계정이 필요합니다. 계속하려면 계정을 만들거나 로그인하세요.
4개의 좋아요

@simon 네, 그 가능성은 알고 있어요. 감사합니다. 하지만 우리는 몇백 개의 텍스트를 번역해야 하는데, 이건 큰 문제입니다 :grinning:

1개의 좋아요

비디오를 올려주셔서 감사합니다. 제 개발 사이트에서도 비슷한 문제를 발견했습니다.

빈 항목 중 어느 것의 편집 버튼을 클릭해도 텍스트 영역이 비어 있습니다.

변경사항 되돌리기 버튼을 클릭하면 기본 텍스트로 되돌아오지만, 텍스트 영역에는 첫 줄 텍스트만 표시됩니다.

페이지를 새로고침하면 전체 기본 텍스트 내용이 표시됩니다.

1개의 좋아요

네, 감사합니다. 원래 텍스트를 반환하는 방법은 알고 있지만, 수정해야 하는데 그렇게 할 수가 없네요…

1개의 좋아요

아마도 관련이 있을 수 있습니다:

https://meta.discourse.org/t/changing-systems-welcome-message/128572/3?u=tshenry

3개의 좋아요

글 올려주셔서 감사합니다. 하지만 문제는 원본 텍스트를 반환하는 데 있는 것이 아니라, 그 텍스트를 수정하는 데 있습니다. 위 영상을 참고해 주세요.

1개의 좋아요

이 주제를 Contribute > Bug 카테고리로 이동했습니다. 호스팅된 Discourse 사이트에서 발견한 바에 따르면, 플레이스홀더를 포함하는 텍스트 내용을 편집하면 편집된 텍스트가 TranslationOverride 테이블에 저장됩니다. 해당 텍스트는 사이트 UI에 표시됩니다. 예를 들어, login_required.welcome_message 텍스트를 편집하면 로그인 페이지에서 편집한 텍스트가 사용됩니다.

문제는 편집된 텍스트가 Admin / Customize / Text 목록에서 일관되게 표시되지 않고, 텍스트 편집 페이지에서는 아예 표시되지 않는다는 것입니다:

‘Only show overridden’ 체크박스를 선택하거나 특정 번역 키를 검색하면 편집된 텍스트가 표시됩니다:

텍스트의 편집 버튼을 클릭하면 빈 텍스트 영역이 표시됩니다:

수정: 이는 @tshenry가 링크한 문제(https://meta.discourse.org/t/changing-systems-welcome-message/128572/3)와 중복되는 것 같습니다. 제가 발견한 차이는 6단계에서 되돌리기 버튼을 클릭하면 최근 편집된 텍스트가 아니라 기본 텍스트로 되돌아간다는 점입니다. 이 문제는 플레이스홀더가 포함된 문자열에서만 발생하는 것 같습니다. 당분간 이 주제를 중복으로 닫겠습니다.

3개의 좋아요